我需要在PHP正则表达式中匹配一个空格字符。 任何人有任何想法吗?

我的意思是像" gavin schulz"一样,两个单词之间的空格。 我使用正则表达式来确保只允许使用字母,数字和空格。 但是我不确定如何找到空间。 这就是我现在所拥有的:

$newtag = preg_replace("/[^a-zA-Z0-9s|]/","", $tag);

嗯...对于匹配a或b ...也毫无疑问...;)

您应该看到正则表达式示例

如果要查找空格,则为""(一个空格)。

如果要查找一个或多个,则为" *"(两个空格和一个星号)或" +"(一个空格和一个加号)。

如果要查找公共间距,请使用"[ X]"或"[ X][ X]*"或"[ X]+",其中X是物理制表符(在所有这些示例中,每个字符前均带有一个空格)。

这些将在我见过的每一个正则表达式引擎中都可以使用(其中有些甚至没有一个或多个"+"字符,呃)。

如果您知道将使用更现代的正则表达式引擎之一,那么"\s"及其变体就是您的理想之选。另外,我相信单词边界也与行的开头和结尾匹配,这在您寻找可能不带空格的情况下很重要。

特别是对于PHP,此页面可能会有所帮助。

从您的编辑看来,您要删除所有无效字符的开始是(请注意正则表达式中的空格):

$newtag = preg_replace ("/[^a-zA-Z0-9 ]/","", $tag);

我需要在PHP正则表达式中匹配一个空格字符。 任何人有任何想法吗?我的意思是像" gavin schulz"一样,两个单词之间的空格。 我使用正则表达式来确保只允许使用字母,数字和空格。 但是我不确定如何找到空间。 这就是我现在所拥有的:$newtag = preg_replace("/[^a-zA-Z0-9s|]/","", $tag);嗯...对于匹配a或b ...也毫无疑问...;)您应该看...
正则表达式 的写法规则:“/规则需要写在2个斜杠 间/”。 (. :小数点)用于 匹配 除换行符之外的所有字符。 (\s:反斜杠小写s)用于 匹配 单个 空格 符,包括tab键和换行符; (\S:反斜杠大写S)用于 匹配 除单个 空格 符之外的所有字符; (\d:反斜杠d)用于 匹配 从0到9的数字;也可以这样写:[0-9] (\w:反斜杠小写w)用于 匹配 字母,数字或下划线字符; (\W:反斜杠大写W)用于 匹配 所有与\w不 匹配 的字符; 元字符包括: +, *,? 元字符理解起来容易混淆,所以我在后面做了代码结果截图 代码如下: “+”元字符规定其前导字符必须连续出现一次或多次 = 比如/es+/ 与“tesseesss
function replaceSpecialChar($strParam){ $regex = "/\/|\~|\!|\@|\#|\\$|\%|\^|\&|\*|\(|\)|\_|\+|\{|\}|\:|\<|\>|\?|\[|\]|\,|\.|\/|\;|\'|\`|\-|\=|\\\|\|/"; return preg_replace... function replaceSpecialChar($strParam){ $regex = "/\/|\~|\!|\@|\#|\\$|\%|\^|\&|\*|\(|\)|\(|\)|\_|\+|\{|\}|\:|\|\?|\[|\]|\,|\.|\/|\;|\'|\`|\-|\=|\\\|\|/"; retur $str = preg_replace("/\s+\r/is", "\n", $str);//回车符是\r $str = preg_replace("/\s+\r\n/is", "\n", $str);//回车符是\r\n $str = preg_replace("/\s+\n/is", "\n", $str);//回车符是\n ```java Pattern pattern = Pattern.compile(" "); Matcher matcher = pattern.matcher("Hello World"); if (matcher.find()) { System.out.println("Match found."); 2. 匹配 多个 空格 :可以使用`\\s+`来 匹配 一个或多个空白字符。 例如,以下 正则表达式 可以 匹配 包含多个 空格 的字符串: ```java Pattern pattern = Pattern.compile("\\s+"); Matcher matcher = pattern.matcher("Hello World"); if (matcher.find()) { System.out.println("Match found."); 注意,`\\s+`会 匹配 字符串 所有的空白字符,包括 空格 、制表符、换行符等。 3. 匹配 不包含 空格 的字符串:可以使用`\\S+`来 匹配 一个或多个非空白字符。 例如,以下 正则表达式 可以 匹配 不包含 空格 的字符串: ```java Pattern pattern = Pattern.compile("\\S+"); Matcher matcher = pattern.matcher("HelloWorld"); if (matcher.find()) { System.out.println("Match found."); 以上就是Java 正则表达式 匹配 空格 的方法。