如何解决正则表达式日语单词无法逃脱
我想删除一些标签,包括日语,但遇到一个问题,即某些单词无法删除。
$text = "#食への好きな人と繋かりたい #食への好きな人と繋がりたい #食べるの好きな人と繋がりたい";
echo "\n".$text;
echo "\n".preg_replace("/#([.\w]+)/u","",$text);
以上代码的输出为:
゙りたい2 ゙るの好きな人と繋がりたい3
而预期的输出应该为空。
我的观察是,如果字符在右上角包含“(即が
或べ
),则这种模式将无法转义。如果我将其更改为{{1 }}和か
,然后将单词转义。
我花了一段时间来弄清楚,但是他们没有用。请帮助逃脱日语单词。谢谢。
解决方法
我将使用以下正则表达式作为主题标签:
#\S+
这将匹配前导#
字符,后跟一个或多个非空白字符(其中包括日语汉字)。
示例脚本:
$text = "#食への好きな人と繋かりたい #食への好きな人と繋がりたい #食べるの好きな人と繋がりたい";
echo $text . "\n";
$text = preg_replace("/#\S+/","",$text);
echo $text;
第二个echo
仅打印两个空格(它们将原始输入中的三个#标签分开);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。