Regex 正则表达式来对字符串进行英语化?
是否有一个通用正则表达式来替换非英语语言中所有已知的特殊字符:Regex 正则表达式来对字符串进行英语化?,regex,unicode,special-characters,Regex,Unicode,Special Characters,是否有一个通用正则表达式来替换非英语语言中所有已知的特殊字符: é, ô, ç, etc. 英文字符: e, o, c, etc. 这个任务就是图书馆的任务。了解如何用你正在学习的语言来使用它 很可能您的库已经有了它的绑定此任务就是库的用途。了解如何用你正在学习的语言来使用它 很可能您的库已经有了它的绑定不,没有这样的正则表达式。请注意,使用正则表达式可以“描述”特定的文本 特定的正则表达式实现可能会提供使用正则表达式进行替换的可能性,但这些替换通常只通过一次替换来执行:不使用A'替换A'和
é, ô, ç, etc.
英文字符:
e, o, c, etc.
这个任务就是图书馆的任务。了解如何用你正在学习的语言来使用它
很可能您的库已经有了它的绑定此任务就是库的用途。了解如何用你正在学习的语言来使用它
很可能您的库已经有了它的绑定不,没有这样的正则表达式。请注意,使用正则表达式可以“描述”特定的文本 特定的正则表达式实现可能会提供使用正则表达式进行替换的可能性,但这些替换通常只通过一次替换来执行:不使用
A'
替换A'
和b
替换b'
等
也许您正在使用的语言在其API中有一个方法来执行这种替换,但它不会使用正则表达式 不,没有这样的正则表达式。请注意,使用正则表达式可以“描述”特定的文本 特定的正则表达式实现可能会提供使用正则表达式进行替换的可能性,但这些替换通常只通过一次替换来执行:不使用
A'
替换A'
和b
替换b'
等
也许您正在使用的语言在其API中有一个方法来执行这种替换,但它不会使用正则表达式 “是的⅁乌普⅂IɅ
这是做不到的,你不应该想这样做!这是对全世界的冒犯,相信立面与拱廊押韵,或者认为科罗拉多州的卡尼翁市属于教会法律,这是天真到无知的地步
您可以通过Unicode规范化表单D运行字符串并丢弃标记字符,但我肯定不会告诉您如何操作,因为它是邪恶和错误的。它是邪恶的,原因已经概述,它是错误的,因为有无数的案件,它根本没有解决
学习材料
以下是您需要阅读的内容:
- 本附录描述了Unicode文本的规范化格式。当实现将字符串保持为规范化形式时,可以确保等价字符串具有唯一的二进制表示形式。本附录还提供了示例、有关Unicode文本规范化的附加规范以及有关Unicode规范化表单一致性测试的信息
- 本文档描述了在UAX#15 Unicode规范化表单[UAX15]中定义的规范等价下高效处理文本的方法和格式
- 本报告是Unicode排序算法(UCA)的规范,详细说明了如何在保持符合Unicode标准要求的同时比较两个Unicode字符串。UCA还提供默认的Unicode排序元素表(DUCET)作为指定所有Unicode字符的默认排序顺序的数据
“muß”
的文本中搜索“MÜSS”
,您可以执行以下操作:
my $Collator = Unicode::Collate->new( normalization => undef, level => 1 );
# (normalization => undef) is REQUIRED.
my $str = "Ich muß studieren Perl.";
my $sub = "MÜSS";
my $match;
if (my($pos,$len) = $Collator->index($str, $sub)) {
$match = substr($str, $pos, $len);
}
这将把“muß”
放入$match
Unicode::Collate::Module支持根据以下地区进行裁剪:
af Afrikaans
ar Arabic
az Azerbaijani (Azeri)
be Belarusian
bg Bulgarian
ca Catalan
cs Czech
cy Welsh
da Danish
de__phonebook German (umlaut as 'ae', 'oe', 'ue')
eo Esperanto
es Spanish
es__traditional Spanish ('ch' and 'll' as a grapheme)
et Estonian
fi Finnish
fil Filipino
fo Faroese
fr French
ha Hausa
haw Hawaiian
hr Croatian
hu Hungarian
hy Armenian
ig Igbo
is Icelandic
ja Japanese [1]
kk Kazakh
kl Kalaallisut
ko Korean [2]
lt Lithuanian
lv Latvian
mk Macedonian
mt Maltese
nb Norwegian Bokmal
nn Norwegian Nynorsk
nso Northern Sotho
om Oromo
pl Polish
ro Romanian
ru Russian
se Northern Sami
sk Slovak
sl Slovenian
sq Albanian
sr Serbian
sv Swedish
sw Swahili
tn Tswana
to Tonga
tr Turkish
uk Ukrainian
vi Vietnamese
wo Wolof
yo Yoruba
zh Chinese
zh__big5han Chinese (ideographs: big5 order)
zh__gb2312han Chinese (ideographs: GB-2312 order)
zh__pinyin Chinese (ideographs: pinyin order)
zh__stroke Chinese (ideographs: stroke order)
你有一个选择:你可以把这件事做好,或者你根本做不到如果你做错了,没有人会感谢你。 正确的做法意味着要考虑UAX 15和UTS 10 在今天这个时代,没有比这更令人接受的了。你知道,现在已经不是60年代了 “是的⅁乌普⅂IɅ 这是做不到的,你不应该想这样做!这是对全世界的冒犯,相信立面与拱廊押韵,或者认为科罗拉多州的卡尼翁市属于教会法律,这是天真到无知的地步 您可以通过Unicode规范化表单D运行字符串并丢弃标记字符,但我肯定不会告诉您如何操作,因为它是邪恶和错误的。它是邪恶的,原因已经概述,它是错误的,因为有无数的案件,它根本没有解决 学习材料 以下是您需要阅读的内容:
- 本附录描述了Unicode文本的规范化格式。当实现将字符串保持为规范化形式时,可以确保等价字符串具有唯一的二进制表示形式。本附录还提供了示例、有关Unicode文本规范化的附加规范以及有关Unicode规范化表单一致性测试的信息
- 本文档描述了在UAX#15 Unicode规范化表单[UAX15]中定义的规范等价下高效处理文本的方法和格式
- 本报告是Unicode排序算法(UCA)的规范,详细说明了如何在保持符合Unicode标准要求的同时比较两个Unicode字符串。UCA还提供默认的Unicode排序元素表(DUCET)作为指定所有Unicode字符的默认排序顺序的数据