2

我有一个函数,我在各种文件中使用了很多次,其签名如下:

Translate("English Message", "Spanish Message", "French Message")

我想提取英语、西班牙语和法语的消息,然后将它们输出到 csv 中,以便真正了解这些语言的人可以告诉我我应该在那里放什么。

无论如何,我遇到的是一些法语和西班牙语消息由于重音字符和单引号而没有出现。

这是一个 vb.net 程序。

编辑

语言没有问题,我的问题实际上是正则表达式和我完全缺乏对正则表达式的理解。

4

2 回答 2

1

取决于您使用的正则表达式库。Sane 正则表达式实现使用 UTF-8 并且没有此类问题,但更多详细信息将有助于您使用什么语言、什么正则表达式库等。

于 2010-02-23T13:47:03.517 回答
1

如果您的语言的正则表达式实现中有一个 DOTALL 标志,您可能需要设置它。

或者,更改正则表达式以捕获否定字符类,如下所示:

([^your_delimiter]*?)

your_delimiter 是紧接在您要捕获的字符串之后的字符。

请参阅此以进行进一步讨论:

http://en.wikipedia.org/wiki/Regular_expression#Unicode

于 2010-02-23T13:52:42.590 回答