2013-04-21 86 views
-1

我想正则表达式应用到字典的文本格式,如:正则表达式匹配单词,A和线遗言开始

[aidwulf] s zool vrsta hijene (Proteles cristata) Aron's beard 

[earanzrod] s bot *ivizma (Ver- bascum Thapsus) Abacca 

[a'baid'on] vi biti na pomoći, stajati uz *ok abide with 

我需要两个常规expressions.First我需要一个正表达式匹配以字母Aa开头的最后一行之前的单词中的每个字母Aa。在我的例子都将在亚伦的在第一个例子和一个匹配一个在第三个例子遵守

第二个正则表达式将在每行最后一个字,(包括连字符的两个词的化合物),其与星号开始和词语相匹配。在我的例子这个表达式将匹配单词胡子Abacca,如线的最后一句话,并开始用星号* OK* ivizma的话。

+0

哪个正则表达式引擎您使用的?这是至关重要的信息(请参阅正则表达式常见问题解答),尤其是因为您处理的不仅仅是ASCII字母。 – 2013-04-21 07:53:39

+1

...你有什么试过,没有奏效?你使用什么编程语言? – 2013-04-21 07:53:40

+0

Regex Buddy Tim。我没有尝试过任何东西,我只知道如何使用Regex Buddy或Expresso,这就是我所知道的Burhan。 – TotoKalvera 2013-04-21 07:54:18

回答

1

一正则表达式:

\bA(?=\S*[ \t]+\S+$) 

(打开 “不区分大小写” 和 “以行^ $匹配断点” 选项)

二的正则表达式:

\S+$|(?<=^|[ \t])\*\S+ 

(打开在 “在行^ $匹配断点” 选项)

+0

蒂姆它像一个魅力非常感谢你! – TotoKalvera 2013-04-21 08:10:00

0

一正则表达式:

我想你想与a开始,这是以前的最后一个字的话。

如果是正确的,这是你在找什么

\b[aA]\w+\s+[^\s]+$ 

OR

\b[aA](?=\w+\s+[^\s]+$) 

OR

(?<=\s)[aA](?=\w+\s+[^\s]+$) 

OR

(?<=^|\s)[aA](?=\w+\s+[^\s]+$) 

二正则表达式:

[^\s]+$ 
+0

第一个匹配“遵守”,其他三个只匹配“守护”中的“a”。谢谢你的帮助Anirudh,Tim的表情完美无缺。 – TotoKalvera 2013-04-21 08:12:53