我尽力删除了句子中所有带有数字的单词,但仍然不成功!我什至尝试了以下正则表达式:
$regex = '/(\\s+\\w{1,2}(?=\\W+))|(\\s+[a-zA-Z0-9_-]+\\d+)/';
$x=preg_replace($regex,"",$x);
我正在努力完成以下任务:
包含数字和任何特殊字符(例如 - 和 _)的单词的原始文本:
This is S3F8G m7j34m h98H40D-3D39 90843-432423 LSDF3 4X4it very good 343c3.
最终文本需要如下:
This is very good.
<?php
$x="This is S3F8G m7j34m h98H40D-3D39 90843-432423 LSDF3 4X4it very good 343c3.";
$re="/ ?\b[^ ]*[0-9][^ ]*\b/i";
print preg_replace($re, "", $x) . "\n";
returns:
This is very good.
一个附带条件:由于此正则表达式删除前导空格而不是尾随空格,因此如果第一个单词包含数字,则结果将在前面添加一个空格。因此:
<?php
$x="9abc foo bar.";
$re="/ ?\b[^ ]*[0-9][^ ]*\b/i";
print preg_replace($re, "", $x) . "\n";
returns:
foo bar
^
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)