1
我尝试用一个空格替换这些标记的所有变化:正则表达式:替换文本:S-标签
<text:s></text:s>
<text:s/>
<text:s anyattributes/>
但<text:span>
应该不会受到影响。
preg_replace("/<\\/?text:s(\\s+.*?>|>)/", " ", $string);
我在做什么错?
我尝试用一个空格替换这些标记的所有变化:正则表达式:替换文本:S-标签
<text:s></text:s>
<text:s/>
<text:s anyattributes/>
但<text:span>
应该不会受到影响。
preg_replace("/<\\/?text:s(\\s+.*?>|>)/", " ", $string);
我在做什么错?
使用下面的正则表达式并用空格替换匹配。
<\/?text:s\b[^<>]*>
代码将是,
preg_replace("~<\/?text:s\b[^<>]*>~", " ", $string);
\b
字边界可以帮助你完成这项工作。由于\b
一个字和一个非单词字符之间的匹配,上述正则表达式将不是字符串<text:span>
,因为没有一个字你为什么重复自己的问题s
和p
之间
存在边界匹配吗? [用0123代替 ](http://stackoverflow.com/questions/26685034/replace-texts-with-whitespace) –
Shubanker
2014-11-01 01:24:14
我认为我的解决方案是正确的,但事实并非如此。这个问题是一个regEx问题。链接的线程是关于xml。所以我提出了一个新问题。对不起,如果这是错误的。 – user3142695 2014-11-01 01:31:59