2011-05-31 51 views
-1

我有一个字符串“|爱尔兰共和国| v/s |北爱尔兰|”。这不是一个固定的字符串。代替“v/s”它可以是任何其他词。 我只想在我的输出中“爱尔兰共和党”和“北爱尔兰”。 请告诉我如何使用String Tokenizer或Split功能来做到这一点。 我想要Java语言。String Tokenizer或Split功能

+4

你可以在任何语言的SO和google上找到你所有的答案。既然你没有提到你的语言,这个问题甚至超过'给我编码'... – sehe 2011-05-31 12:05:32

+0

什么语言? – thumbmunkeys 2011-05-31 12:06:03

+0

这是在Java ... – 2011-05-31 12:21:44

回答

3

可以使用split功能:

String str  = "|Republic of Ireland| v/s |Northern Ireland|"; 
String[] pieces = str.replaceAll("^\\||\\|$","").split("\\|[^\\|]+\\|"); 

See it

+0

这里的问题是它可以是除“v/s”之外的任何其他东西。我的要求是获取两个“|”之间的字符串字符。 – 2011-05-31 12:38:02

+0

@Vishal Jindal:我已经更新了我的答案。 – codaddict 2011-05-31 12:50:59

+0

感谢您的回复。这是我寻找的答案 – 2011-05-31 13:11:16

3

除非你是刨总是不必解析v/s只使用字符串替换摆脱|,然后使用拆分上v.s


的Python:

"|Republic of Ireland| v/s |Northern Ireland|".split("v/s")[0].replace("|", "") 

Java

"|Republic of Ireland| v/s |Northern Ireland|".replace('|', '').split("v\s")[0]; 

正如您在所有语言中看到的一样。

+0

这里的问题是它可以是除“v/s”以外的任何其他东西。我的要求是获取两个“|”之间的字符串字符。我想用Java。 – 2011-05-31 12:19:51

+0

您也可以将Java表达式全部写入一行,以使它看起来相同。 Python示例中是否有太多')'? – 2011-05-31 12:59:00

1

如果你已经在你的字符串交替感兴趣的项目,在管道字符分割它和你的所得数组中使用的每个第二个项目。

请指定您的编程语言以获得更详细的结果。

+0

语言是Java ...我的要求是在两个“|”之间获取字符串,字符,并忽略不介于两个“|”之间的其他部分人物 – 2011-05-31 12:24:32

+0

所以你有类似于“| WantThis | DoNoWantThis | WantThis | DoNotWantThis | WantThis ...”?!按管道字符拆分它(如上面的答案)并使用结果数组的每个第二项。 – Markus 2011-05-31 12:38:12