我有一些用户输入问题标题,如:
"Why do dogs die ?"
甚至
"Why do dogs die ?"
我的目标是删除问号前面的空格,以便输出正确的拼写:
"Why do dogs die?"
首先,我认为我可以搜索_?
并将其替换为?
,但如果存在以下问题,那将会更加猖獗:
"There is the sign ? - What is the name of it ?"
这就是我需要将其缩小到字符串末尾的原因。
欢迎任何解决方案。
答案 0 :(得分:1)
在正则表达式的末尾添加$
做preg_replace('/\s+\?$/', '/?/', $string)
。
Link to regex
答案 1 :(得分:1)
您可以使用Regex,
[\t\s]+\?
这会在之前搜索标签或空格?
所以你可以用
替换空格/标签preg_replace($pattern, $replacement, $string)
模式为'/[\t\s]+\?/g'
替换将是'?'
答案 2 :(得分:0)
USE preg_replace
$var = "Why do dogs die ?";
preg_replace('/(\s+\?)/', '?',$var);