我需要帮助来了解正则表达式。由于某种原因,我在SOF上阅读了很多教程和很多问题,并且无法理解。我想在这里使用String.split函数:Java string.split - by multiple character delimiter。但我不明白这部分:

String[] parts = input.split("[,\\s\\-:\\?]");


让我们假设我想使用以下定界符进行分割:“”(空格),“。” (句号),“,”(昏迷),“!”,“»”,“«”等。如何使用正则表达式获取此内容?我想了解这里的这些字符:(“ [,\ s \-:\?]”)。什么是“ \ s”,为什么需要它。

最佳答案

\s是“任何单个空格字符”。因此它代表一个空格,换行符,制表符或其他类似内容。

请注意,在这种情况下,可以更紧凑地编写正则表达式:

String[] parts = input.split("[,\\s:?-]");


(在?内时,[]不需要转义,并且-也是最后一件事也不需要。)

有关字符类的更多详细信息,请参见http://www.regular-expressions.info/charclass.html

关于java - Java Regex理解,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7621214/

10-13 07:13