使用Regex查找句子的第一个字母和符号。 在句子的开头有时可以是字母,有时可以是数字。
15. Lorem ipsum is placeholder text
B. Lorem ipsum is placeholder text
C.Lorem ipsum is placeholder text
D . Lorem ipsum is placeholder text
E,Lorem ipsum is placeholder text
我写了这样的东西:
[\dga-zA-Z.]{1\s}
但是,并非每个句子都适用。而且,它不会检测第一个字母/数字和带有句子的符号之间是否存在空格。
我在哪里出错?
答案 0 :(得分:0)
您好,此匹配您提供的所有示例
([A-Za-z\d ]+)(\.|,)
它的作用如下:
如果不能解决问题,请在下面评论
编辑:此处的演示:click
答案 1 :(得分:0)
使用:^[\da-zA-Z]+\h*[.,]
说明:
^ # beginning of line
[\da-zA-Z]+ # 1 or more letter or digit
\h* # 0 or more horizontal spaces
[.,] # a dot or a comma
答案 2 :(得分:0)
以下正则表达式将匹配放置在句子开头的单个字母或,然后加上单或逗号:>
^(([a-zA-Z]{1}|[0-9]+)\s*[.,]{1})(.*)$
这是细分:
^ # Asserts position at start of the line
[a-zA-Z]{1}|[0-9]+ # Match a single alphabetic character or one or more digits
\s* # Matches whitespace characters between 0 and unlimited times
[.,]{1} # Matches a single period or comma character literal
.* # Matches the rest of the text
$ # Asserts position at end of the line
需要根据您的需要修改正则表达式。例如,如果您不希望在句子开头的字母/数字后有空格时匹配,或者要包含更多分隔符来标记分隔符,则您不希望匹配。让我知道您是否希望此正则表达式符合其他约束条件。
请参见DEMO