我想问一下,我怎样才能获得文本----(这个变量中不需要abc文本)和不包含----的文本。例如:
"text text text text ---- abc text",
"text text text text"
对于第一个变量,我只想获得
"text text text text"
"text text text text
对于第二个变量,我想在
之后只获得文本"abc text"
我想首先得到2个变量,里面只有“文本文本文本文本”(文本之前----来自两者,不包含----和文本之后)和其他变量文本仅在---之后 - 。 我怎么能这样做? 感谢。
答案 0 :(得分:1)
preg_match('/(.*?)\s*----\s*(.*)/', 'text text text text ---- abc text', $match);
var_dump($match);
这将匹配任何文本除以一些可选的空格(0 - 无限制),4个破折号和一些可选的空格。括号中的模式在$match[1]
和$match[2]
中捕获。
上面的示例是匹配分隔符的第一次出现。如果您想要最后一个,请使用.*
而不是?
。如果要在每个分隔符上拆分,请使用preg_split。