How to search and replace a text from a character vector?

3 vues (au cours des 30 derniers jours)
Kazi Alam
Kazi Alam le 8 Juil 2021
Commenté : Kazi Alam le 8 Juil 2021
Hallo, Thanks for reading,
I have a character array (1x22222) read from a text file. Using the character vector I would like
to serach for the following line within the array: ( ' * ' here is represented as random text part)
'(:PAR :N CORNERS :DIM (4 2) :V #2A(*)'
After that I would like to replace the text with following line:
'(:PAR :N CORNERS :DIM (4 2) :V #2A((0.0 4.0) (2.5 4.0) (2.5 0.0) (0.0 0.0))'
I have the following lines of code but it cannot find the intended text
f = regexprep(character_array,'(:PAR :N CORNERS :DIM (4 2) :V #2A(*)'],...
'(:PAR :N CORNERS :DIM (4 2) :V #2A((0.0 4.0) (2.5 4.0) (2.5 0.0) (0.0 0.0))');

Réponse acceptée

Bhavya Chopra
Bhavya Chopra le 8 Juil 2021
Please note that ‘(‘ is a special character. For replacing the described lines with the intended text, please replace the expression (second argument of the regexprep function) with:
'\(:PAR :N CORNERS :DIM \(4 2\) :V #2A\(.*?\)'
  1 commentaire
Kazi Alam
Kazi Alam le 8 Juil 2021
@Bhavya Chopra thank you very much. A follow-up question, if you are interested.
I have similar lines with varying number as you can see in photo below ( numbered the lines). If I want to change the numbers on individual lines what would be the procedure. Right now with wildcard only the first line can be changed.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by