문자열을 단어별로 분할하고 인용 텍스트를 유지하는 방법
주어진 문자열 "Lorem ipsum "dolor sit amet" consectetur "adipiscing elit " dolor", 우리는 인용된 문구의 무결성을 유지하면서 배열로 분해하는 방법을 모색합니다. 제공된 코드를 사용하면
$mytext = "Lorem ipsum %22dolor sit amet%22 consectetur %22adipiscing elit%22 dolor" $noquotes = str_replace("%22", "", $mytext"); $newarray = explode(" ", $noquotes);
개별 단어가 분리됩니다. 이 문제를 해결하기 위해 우리는 정규식을 활용합니다.
$text = 'Lorem ipsum "dolor sit amet" consectetur "adipiscing \"elit" dolor'; preg_match_all('/"(?:\\.|[^\\"])*"|\S+/', $text, $matches);
이 정규식은 인용된 문자열이나 공백이 아닌 문자와 일치합니다. 인용된 문자열에는 이스케이프된 큰따옴표(")가 포함될 수 있으며 기술은 이를 수용합니다. 결과:
Array ( [0] => Array ( [0] => Lorem [1] => ipsum [2] => "dolor sit amet" [3] => consectetur [4] => "adipiscing \"elit" [5] => dolor ) )
설명:
정규식은 다음과 같이 나눌 수 있습니다. 해당 구성요소:
위 내용은 인용문을 유지하면서 문자열을 단어로 분할하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!