一直对正则二字的含义不理解,所以去查了下,原来是古汉语词汇,意为:常规,规则
以下是百度百科的引用
正则是一个汉语词汇,拼音为 zhèng zé,基本意思是正其礼仪法则;正规;常规;正宗等。出自《楚辞·离骚》、《插图本中国文学史》、《东京赋》等文献。
那么为什么当初不翻译成更加浅显易懂的规则表达式呢?
1
feather12315 2021-08-16 08:45:03 +08:00 via Android
还有个翻译:正规表达式
|
2
IgniteWhite 2021-08-16 08:50:05 +08:00
https://zh.wikipedia.org/wiki/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F#%E8%AD%AF%E5%90%8D%E5%95%8F%E9%A1%8C
Regular Expression 的 Regular 一般被譯為正则、正规或常規。此處的 Regular 即是規則、規律的意思,Regular Expression 即「描述某種規則的表達式」之意。 |
3
jorneyr 2021-08-16 08:57:49 +08:00 9
翻译为正则,首先没错,二是翻译的人文学素养比你的建议强很多。
|
4
silkriver 2021-08-16 09:02:03 +08:00
汉语词汇丰富,各种写法通常也能让人秒懂,最终确定规范时基本上就是看谁定的词接受度更高一点
|
5
weixiangzhe 2021-08-16 09:02:03 +08:00 via iPhone 7
可能是我文学素养 确实太低了,好多英文我看懂了中文还是没有看懂吧
|
6
weixiangzhe 2021-08-16 09:07:48 +08:00
x(?=y) 先行断言 Lookahead assertion: (positive lookahead) Matches “x” only if “x” is followed by “y”. For example, /Jack(?=Sprat)/ matches “Jack” only if it is followed by “Sprat”. `/Jack(?=Sprat
x(?!y) 正向否定查找 Negative lookahead assertion: Matches “x” only if “x” is not followed by “y”. For example, /\d+(?!\.)/ matches a number only if it is not followed by a decimal point. /\d+(?!\.)/.exec('3.141') matches “141” but not “3”. (?<=y)x 后行断言 Lookbehind assertion: Matches “x” only if “x” is preceded by “y”. For example, /(?<=Jack)Sprat/ matches “Sprat” only if it is preceded by “Jack”. `/(?<=Jack (?<!y)x 反向否定查找 Negative lookbehind assertion: Matches “x” only if “x” is not preceded by “y”. For example, /(?<!-)\d+/ matches a number only if it is not preceded by a minus sign. /(?<!-)\d+/.exec('3') matches “3”. /(?<!-)\d+/.exec('-3') match is not found because the number is preceded by the minus sign. __ 话说这些翻译中文的确实有点难理解😂 |
7
IgniteWhite 2021-08-16 09:09:57 +08:00 10
实用角度出发:比如我问你,这个正则怎么写?你肯定知道我说的是正则表达式。
如果是规则表达式:这个规则怎么写?你会问我,什么规则?我说,匹配的那个规则。你问,各种 wildcard 和 globbing 都是匹配的规则,你说的哪个。我说,规则表达式那个。 |
8
vopin 2021-08-16 09:24:05 +08:00 via iPhone 1
有可能是翻译的日语 正規表現
最近发现日语的数学、计算机词汇和中文很像 |
9
Leonard 2021-08-16 09:28:13 +08:00 23
专有名词翻译成一个非常用词,使用起来比较会没有歧义
|
10
anjianshi 2021-08-16 09:29:39 +08:00
编程词汇翻译还扯什么文学素养,装逼...
|
11
FakNoCNName 2021-08-16 09:34:57 +08:00
|
12
SilentDepth 2021-08-16 09:36:46 +08:00 via iPad
@anjianshi #10 不然。翻译就是翻译,跟主题无关。好的翻译对文学素养是有要求的。
|
14
luckykong 2021-08-16 09:47:17 +08:00 via Android 1
@weixiangzhe 先行断言 和 Lookahead assertion,这两个哪一个都不好理解吧。好理解的是后面的英文解释说明。 但这样的话翻译成中文,也很容易理解啊
|
15
silkriver 2021-08-16 09:48:17 +08:00
追究一个词是古汉语词汇还是日语词汇是没有意义的,只要遵循汉语的基本法就是汉语。walkman 是日本人生造的,但它就是个英语单词。
|
16
huang119412 2021-08-16 09:49:03 +08:00 1
鲁棒性不服,感觉像拿着棒子打人😅
|
17
koast 2021-08-16 09:52:15 +08:00 via Android
@weixiangzhe #6 确实,这些中文翻译我一开始看了就???看了英语原文之后也能理解为什么这么翻译,但是不得不说,这种翻译方法不是很直观(指看到词能猜到大概意思)
|
18
laoyur 2021-08-16 10:09:09 +08:00
@huang119412 看起来 说文学素养是装逼 的那人应该会喜欢 鲁棒性 这个翻译吧
|
19
Mohanson 2021-08-16 10:24:12 +08:00
句柄...
|
20
plko345 2021-08-16 10:46:08 +08:00 via Android
正则这个翻译很有水平啊
|
21
fredli 2021-08-16 10:47:47 +08:00
有意思,这个翻译是大陆最先的么?还是香港台湾传过来的?
|
22
lujjjh 2021-08-16 10:48:52 +08:00
很多词数学里也有,像函数( function )、正则( regular ),虽然 CS 领域的意思不太一样,但是翻译借鉴过来了。
不同地区的翻译也有区别,比如台湾就是把 regular expression 翻译成规则运算式。 |
23
southsala 2021-08-16 10:55:54 +08:00
我刚学编程的时候,不明白健壮性是个什么鬼,编程和健身有什么关系。
|
24
aguesuka 2021-08-16 10:57:38 +08:00
regularization = 正规化(数学)
normalizer = 中心化子和正规化子 (Centralizer and normalizer) 范畴学. 至少把这两个先区分再说有水平吧. 作为业余译者, 直觉上 "positivity" 才应该是 "正规", 其它两个应该都应该换个翻译. |
25
nullcoder 2021-08-16 11:03:05 +08:00
@Leonard "专有名词翻译成一个非常用词,使用起来比较会没有歧义"
体会一下 memory 这个词在英语里的意思,觉不觉得这个词比起“内存”很形象? 而 k8s 里的 pod,至今没有统一 /官方的中文翻译。 |
26
aguesuka 2021-08-16 11:15:04 +08:00
如果要重新翻译"正则", 应该是意译, 需要蕴含 "字符串匹配表达式" 的含义, 或者像 "cron 表达式" 一样不要翻译. 直译"成规则"就是又重走把 "function" 翻译成 "函数" 的路, 也不好.
|
27
securityCoding 2021-08-16 11:17:09 +08:00 via Android
@huang119412 这个鲁棒性真的是日了狗
|
28
mekingname 2021-08-16 11:18:27 +08:00
我理解的是:正则=> 如果[正]确[则]提取。
如果你的 pattern 写得正确,符合目标数据的格式,则把目标数据提取出来 |
29
aguesuka 2021-08-16 11:37:51 +08:00
@jorneyr
https://ja.wikipedia.org/wiki/%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE 和制汉语正規表現(せいきひょうげん、英: regular expression ). 和人文素养没有关系 |
30
aoeui 2021-08-16 11:54:29 +08:00 via Android
|
31
PrinceofInj 2021-08-16 12:25:07 +08:00 via Android
这个翻译可以把鲁棒按在地上摩擦。
|
32
falcon05 2021-08-16 12:30:06 +08:00 via iPhone
规则表达式明显比较直观和准确,正则表达式?什么是正则,那反则表达式呢?
|
33
kinboy OP @IgniteWhite wildcard 翻译为通配符,就是一个不错的示例,可以是一个专用汉语名词,也容易理解,基本上第一次解除也能猜出个大概意思。
但是正则这个词在现代汉语中的使用频率应该非常低了,不去查一下还真不知道是什么意思 |
36
jorneyr 2021-08-16 12:54:51 +08:00
@aguesuka 可能你没注意,我提的是正则这个词的翻译比楼主提的规则从文学素养上来说更好,只是针对这个词,与其他方面无关。上面很多人也从各个方面进行了分析,大多人也认同正则比规则更合适。
|
37
libook 2021-08-16 13:37:04 +08:00 3
正则表达式的发明者是一个数学家,正则表达式是“形式语言学”的范畴,这一开始是属于数学领域的。
早先计算机还只是数学学科下的一个子学科,大量的概念都是来自于数学中的概念,比如咱们耳熟能详的函数;按照题主的思路,function 应该翻译成“功能”。 在数学中有很多跟 regualr 相关的概念,中文都是被翻译成正则,正则表达式可能是为了翻译上的统一性,所以也翻译成了正则。 至于数学上为什么这样翻译,有兴趣的人可以去考究一下,这个可能比较难,因为数学是一门古老的学科,有些数学概念甚至是古代的时候产生的,用的名字也是古汉语(比如勾股定理),以至于如今人们会觉得晦涩难懂。我个人更倾向的推测是,“正”是动词或副词性,“则”为名词性。 翻译成“规则表达式”确实浅显了,但不易懂,因为“规则”的含义太通用了,反而不能让人快速联想到是众多“规则”里的哪一种,而且并不是所有可以用来匹配字符串的“规则”都是 Regular Expression 。 即便是英语,同一个词汇在不同的语境下的意思也可能不一样,词典上的对照不是铁律,只是一种辅助意会的工具,否则机器翻译技术就不会那么难了。 |
38
falcon05 2021-08-16 14:02:18 +08:00 via iPhone
@libook 不要拿数学当挡箭牌好吗?数学还讲究对称呢?有正数有负数,有正则表达式,那负则表达式呢?
|
39
autoxbc 2021-08-16 14:16:13 +08:00 2
译名一旦形成就没什么可争论了,举个例子:
近代翻译大家「严复」都知道吧,没人敢说比他更懂翻译,他非常执着的要把今天常用的「社会」(Society)一词翻译为「群」,你说严复对还是不对,这个事已经无法深究了。而「社会」其实是个日本造汉字词,这又涉及到现代汉语里大量的日本造汉字词,这又是另一个话题了 |
40
Kilerd 2021-08-16 14:34:36 +08:00 1
技术圈的中文翻译你跟我说文学素养?
robust 鲁棒性 socket 套接字( socket programing 套接字编程) 还有吧 goroutine 翻译成 「 go 程」 的 你品,你细品 |
41
Biwood 2021-08-16 14:36:03 +08:00
第一次听说“正则表达式”这个词语,感觉挺唬人的,直到后来真正学习了并且用起来之后才发现,也就那样...
查了一下 台湾翻译:正规表达式 日本翻译:正规表现 对比一下,会发现“正则”的歧义更少。这大概是语言的接受程度跟语言本身的独特性中间的一种取舍。 |
44
adoal 2021-08-16 16:18:28 +08:00
可能第一个这么翻译的人是刘仁轨的粉丝。
|
45
vinceall 2021-08-16 18:20:22 +08:00
没毛病,有病的是鲁棒性
|
46
tLbf2p3UC4BM3H1N 2021-08-16 21:25:55 +08:00
仅仅是一个先行性和习惯性的问题,所谓的“说正则你会想到正则”,只是习以为常了而已。
|
47
mitoop 2021-08-16 21:35:50 +08:00 via iPhone
有过同样的疑问 regular expression 有规律的表达式 不知道正则是怎么来的
|
48
titan2006 2021-08-16 21:44:21 +08:00 via iPhone
为了装逼胡乱翻译的产物,搞得翻译者很懂的样子
|
49
ohiu 2021-08-16 22:00:51 +08:00 via iPhone
不是很喜欢这种故意表现的“好像有些家底”一样的翻译,也不是很赞成翻译它,专有词汇翻译本身既突破语言壁垒又创造语言壁垒,倒不如直接说 RE 表达式
|
50
kidding 2021-08-16 23:36:18 +08:00
@huang119412 玩个梗 鲁棒性:指粗鲁的状态下也能表现的很棒。
|
51
snw 2021-08-16 23:37:24 +08:00 via Android
起源不知道,但从结果来说,起一个相对比较独特的词汇搜索起来比较容易。
(然后望向一堆单字母和特殊字符作为名称的编程语言🐶) |
52
boboliu 2021-08-17 04:38:02 +08:00
@falcon05 #38 数学啥时候「讲究对称」了……这从历史和事实做结论的推导怎么就「挡箭牌」了……
在计算机还没有那么强大的年代,现在很多常用的东西就已经被计算机学家、或者说跨界的数学家和逻辑学家以数学语言的方式推导和定义了。翻译自然要考虑到数学界前有的翻译。 |
53
adormer 2021-08-17 04:52:23 +08:00
翻译很难做到完美,正则是挺难懂的,但是确实称得上信达雅.很多专业名词都挺晦涩难懂的,即使是母语造出来的词
|
54
qwerthhusn 2021-08-17 08:19:50 +08:00
玩游戏,简中 > 英文 > 繁中
看技术资料,英文 > 简中 |
55
araraloren 2021-08-17 08:56:05 +08:00
@vopin 因为确实很多词 ,近代的 都是 从 日文翻译 直接借用的.. 这样我们就不用翻译了 哈哈
|