【发布时间】:2012-09-28 10:05:49
【问题描述】:
我有这段文字:
<blockquote>1. тест1; тест2; </blockquote>
<blockquote>2. тест1; тест2; </blockquote>
<blockquote>1) тест1; тест2; </blockquote>
<blockquote>2) тест1; тест2; </blockquote>
<blockquote>1. 1) тест1; тест2; </blockquote>
<blockquote>1) 1. тест1; тест2; </blockquote>
<blockquote>1. тест </blockquote>
你能给我表达吗,用那个我可以提取тест1;回复2;在这些字符串中的任何一个变量?回复1;回复2; - 是西里尔字母。所以对于提取 тест 我需要使用 ([\p{IsCyrillic}]*) 表达式。
String pattern = "(.*)<blockquote>1. ([\\p{IsCyrillic}]*) </blockquote>(.*)";
仅适用于第一个变体。这种变体的表达方式是什么? (或者你可以给我每个字符串变体的特定表达吗?
【问题讨论】:
-
我不认为这个正则表达式真的有效。
1;和2;与\p{IsCyrillic}不匹配。 -
with "(.*)
1. ([\\p{IsCyrillic}]*)
(.*)" 我只能提取 тест,不能提取 тест1; тест2;. -
你说得对。你能给我正确的表达方式吗?
-
您需要首先定义您想要匹配的确切内容 - 除了西里尔字母之外还允许在匹配中使用什么?
标签: java regex pattern-matching expression