不确定如何解释这一点,但现在就这样了。
$val
可以包含一个后跟无,一个或多个点的字符串:
test
test.
test..
test...
etc
使用正则表达式我正在寻找$val
中的任何无效字符,然后我想替换它们。
(preg_replace('-['.$inv.']-',"",$val))
$inv
是一个无效条目数组,它还包含一个点。
如何从$inv
中删除所有$val
个字符,除了最后的任何点?
如果$val = te%st...
正确的结果应该测试......
如果$val = te.est.
应该测试正确的结果。
希望这是有道理的。感谢。
答案 0 :(得分:0)
您不需要正则表达式,只需使用str_replace
删除所有不需要的字符:
$replace = array('.', ','); // The characters you want to replace.
echo str_replace($replace, '', '..,.Here,, ..be some text,.');
// Result:
// 'Here be some text'
答案 1 :(得分:0)
以下代码将删除字符串中的所有非字母num字符。
$string = "Sample text with letters and numbers 45678 and special symbols ($*&#($*#";
$new_string = ereg_replace("[^A-Za-z0-9]", "", $string);
echo $new_string
答案 2 :(得分:0)
试试这个
<?php
$val = '
test
test.
test..
test...
etc
';
$inv = 'te';
$ret = preg_replace("@([$inv].+)\.@",'',$val);
var_dump($val);
var_dump($ret);
$ ret现在包含
test
etc