유연한 문자열 조작
버전 11은 문자열의 유연한 조작을 가능하게 하는 다양한 저급 함수를 추가하였습니다.
어떤 인물의 세부 사항을 열거하는 문자열을 씁니다.
In[1]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_1.png)
string = "lastname Doe firstname John age 20 email john.doe@mail.com \
mobile 123-456-7890";
StringSplit을 사용하여 여기서 부분 문자열 목록을 작성합니다.
In[2]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_2.png)
splitstring = StringSplit[string]
Out[2]=
![](assets.ko/flexible-string-processing/O_1.png)
모든 부분 문자열의 오른쪽을 길이가 20이 되도록 작성합니다.
In[3]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_3.png)
padstring = StringPadRight[splitstring, 20, " "]
Out[3]=
![](assets.ko/flexible-string-processing/O_2.png)
결과식을 분할하여 세부사항별로 각 항목을 문자열로 그룹화합니다.
In[4]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_4.png)
partstring = Partition[padstring, 2]
Out[4]=
![](assets.ko/flexible-string-processing/O_3.png)
그룹 사이에는 새로운 행을, 각 그룹에는 빈 줄을 삽입하고 StringRiffle을 사용하여 모든 문자열을 연결합니다.
In[5]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_5.png)
rifstring = StringRiffle[partstring, "\n", ""]
Out[5]=
![](assets.ko/flexible-string-processing/O_4.png)
최종식은 String 객체입니다.
In[6]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_6.png)
Head[rifstring]
Out[6]=
![](assets.ko/flexible-string-processing/O_5.png)
InsertLineBreaks 함수를 사용하여 새로운 행을 삽입하는 방법도 사용 가능합니다.
In[7]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_7.png)
InsertLinebreaks[
StringTake[ExampleData[{"Text", "AliceInWonderland"}], 200], 40]
Out[7]=
![](assets.ko/flexible-string-processing/O_6.png)
In[8]:=
![Click for copyable input](assets.ko/flexible-string-processing/In_8.png)
InsertLinebreaks[
StringTake[ExampleData[{"Text", "AliceInWonderland"}], 200], 40];
InsertLinebreaks[%, 40]
Out[8]=
![](assets.ko/flexible-string-processing/O_7.png)