gpt4 book ai didi

regex - 非英文字符的不区分大小写的正则表达式

转载 作者:行者123 更新时间:2023-12-03 16:21:43 27 4
gpt4 key购买 nike

我需要对包含非英语字符(西类牙语、法语、德语和俄语)的文本执行正则表达式匹配。

我希望匹配忽略大小写,所以对于英文字符我只使用 /i修饰符,但这不适用于 之类的词übermäßig .

编写同时匹配 übermäßig 和 ÜBERMÄßig 的正则表达式的最简单方法是什么?是否可以使用相同的方法将大写的非英文字母转换为 Perl 中的小写字母?

最佳答案

它工作得很好

$ perl -E'use utf8; say "ÜBERMÄẞIG" =~ /^übermäßig\z/i ? "match" : "no match"'
match

$ perl -E'use utf8; say "ÜBERMÄSSIG" =~ /^übermäßig\z/i ? "match" : "no match"'
match

( use utf8; 表示源代码使用 UTF-8 编码。脚本中不可能有这些字符。)

我怀疑是编码问题,这意味着你认为你给了 Perl “ß”,而实际上你没有。也可能是您正在使用无法正确处理多字符折叠的旧版 Perl。一般来说,使用 /u 会有所帮助。 ,但对于这个例子来说应该没有什么不同。

关于regex - 非英文字符的不区分大小写的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12936299/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com