如果我想使用正则表达式在字符串中找到“<”或“>”并根据“<”或“>”分割字符串,我该怎么做?使用正则表达式的混淆
例如我可能有一个字符串,它看起来像这样:
String str = <name> hello bob, how are you today </name>
,我发现这两个环节,但我仍然感到困惑: link 1 link 2
如果我想使用正则表达式在字符串中找到“<”或“>”并根据“<”或“>”分割字符串,我该怎么做?使用正则表达式的混淆
例如我可能有一个字符串,它看起来像这样:
String str = <name> hello bob, how are you today </name>
,我发现这两个环节,但我仍然感到困惑: link 1 link 2
str.split("[<>]");
括号意味着你会匹配其中的任何字符。
谢谢,我刚刚意识到,所以我想搜索的任何字符可以放在“[]”之间,如果我想搜索对于范围我可以使用“ - ”再次感谢 – BigBug 2012-03-25 07:51:23
有两种方法在一个正则表达式来实现or
:
交替使用|
操作:
a|b
意味着 “a
或b
”。|
的任一侧:one|two.*three
指“one
或(two
,接着任意字符串,随后three
)”。^(one|two.*three)$
字符类:
[ab]
的意思是“一个字符从收集ab
的”。[^ab]
的意思是“除a
或b
之外的任何字符”。[a-b]
表示“集合abc
中的任何字符”。所以你的情况,可能的正则表达式。将(<|>)
或[<>]
,其中后者是优选的,因为这两种选择在长度上一个字符。在“>”
String[] splitArray = subjectString.split("[<>]")
字符串分割两次......一旦通过,然后将其转换回字符串...,然后再次分裂:
要分割字符串,可以使用
.split()
方法“<”但那失败了...这不是我想要的..不熟悉正则表达式 – BigBug 2012-03-25 07:37:24你究竟是什么感到困惑?把你的时间和学习正则表达式:http://www.regular-expressions.info/tutorial.html – 2012-03-25 07:39:49