Procesamiento flexible de cadenas de caracteres
La versión 11 agrega una variedad de funciones de bajo nivel que permiten la manipulación flexible de cadenas de caracteres.
Tome una cadena de caracteres que contenga una secuencia de detalles personales.
In[1]:=
![Click for copyable input](assets.es/flexible-string-processing/In_1.png)
string = "lastname Doe firstname John age 20 email john.doe@mail.com \
mobile 123-456-7890";
Construya una lista de subcadenas de caracteres con StringSplit.
In[2]:=
![Click for copyable input](assets.es/flexible-string-processing/In_2.png)
splitstring = StringSplit[string]
Out[2]=
![](assets.es/flexible-string-processing/O_1.png)
Agregue espacio a la derecha de las subcadenas para que tengan una longitud de 20.
In[3]:=
![Click for copyable input](assets.es/flexible-string-processing/In_3.png)
padstring = StringPadRight[splitstring, 20, " "]
Out[3]=
![](assets.es/flexible-string-processing/O_2.png)
Segmente la expresión resultante para agrupar cadenas de caracteres por detalles.
In[4]:=
![Click for copyable input](assets.es/flexible-string-processing/In_4.png)
partstring = Partition[padstring, 2]
Out[4]=
![](assets.es/flexible-string-processing/O_3.png)
Utilice StringRiffle para concatenar todas las cadenas de caracteres, insertando nuevas líneas entre los grupos y las cadenas vacías dentro de cada grupo.
In[5]:=
![Click for copyable input](assets.es/flexible-string-processing/In_5.png)
rifstring = StringRiffle[partstring, "\n", ""]
Out[5]=
![](assets.es/flexible-string-processing/O_4.png)
La expresión final es un objeto String.
In[6]:=
![Click for copyable input](assets.es/flexible-string-processing/In_6.png)
Head[rifstring]
Out[6]=
![](assets.es/flexible-string-processing/O_5.png)
Una forma alternativa de insertar nuevas líneas es usando la función InsertLinebreaks.
In[7]:=
![Click for copyable input](assets.es/flexible-string-processing/In_7.png)
StringTake[ExampleData[{"Text", "AliceInWonderland"}], 200]
Out[7]=
![](assets.es/flexible-string-processing/O_6.png)
In[8]:=
![Click for copyable input](assets.es/flexible-string-processing/In_8.png)
StringTake[ExampleData[{"Text", "AliceInWonderland"}], 200];
InsertLinebreaks[%, 40]
Out[8]=
![](assets.es/flexible-string-processing/O_7.png)