我有一个充满字符串的数组,可能包含一个或多个下划线,短划线和句点。我想将下划分为由下划线,短划线和句点分隔的字符。到目前为止,我已经成功地使用了下划线和破折号而不是时期。
这有效:
$family02 = preg_split('/_|-/', $row['family'], -1, PREG_SPLIT_NO_EMPTY);
当我尝试...
'/_|-./'
'/_|-\./'
'/_|-|./'
...或者以不同的方式排序分隔符,我得到3个中的1个或2个中的1个或空数组。
感谢您提供任何帮助或良好的REGEX链接。
路
答案 0 :(得分:2)
只需使用
preg_split('/[-_.]/', $str)
表示您按-
,_
,.
如果要删除字符串中的空组,请使用
preg_split('/[-_.]+/', $str)
所以多个决定者应用为一个。
答案 1 :(得分:1)
您应该使用:
// [_.-] stands for a character of underscore or dash or period.
$family02 = preg_split('/[_.-]/', $row['family'], -1, PREG_SPLIT_NO_EMPTY);