是否可以添加一个“过滤器”,其中的单词如果找到,regex不会拆分这些单词?-哇我希望我的英语说得通:)
让我举例说明。
这是我当前用来分割字符串的正则表达式,例如:thestringisting together

$taglist=preg_replace('/([a-z])([A-Z])/','$1 $2', $taglist);

对于regex生成的示例字符串:该字符串
我想有一个过滤器,在那里我可以放在坐,这样正则表达式不会分裂的话。
请让我知道,如果我的解释不够好,我还在和我的英语打交道:
哦,谢谢你的社区!!

最佳答案

你不能真正地检查你是否在一个词的中间,而不是手动地把那个单词用“AA>”作为“StEMA”做的。要有一个排除列表,您必须以编程的方式执行它。

$taglist = 'TheStringIsNowCurrentlySItTING';
$excludeList = array(
    'SItTING',
    'StringIs',
);

$exclusions = implode('|', $excludeList);
$tagArr = preg_split("/($exclusions)/", $taglist, -1, PREG_SPLIT_DELIM_CAPTURE);
foreach ($tagArr as &$token) {
    if (!in_array($token, $excludeList)) {
        $token = preg_replace('/([a-z])([A-Z])/', '$1 $2', $token);
    }
}
$taglist = implode(' ', $tagArr);

按你的排除条款把它分开。
只在未排除的术语中放置空格。
把所有东西都粘在一起。

10-08 05:15