Javascript string.length 不等于 Python len()

想象一下在 HTML 中输入以下文本textarea

123456


7

如果通过 javascript 计算该文本的长度,即string.length,则结果为10.

现在,如果用 python 测量该输入的长度,即通过len(string),则它是13

它看起来不像13人眼,但如果print repr(string)在 python 中运行,我们会得到123456\r\n\r\n\r\n7. 那是13字符,不是10。作为参考,本次测试是在 Ubuntu 操作系统中进行的。

python 有没有办法通过模仿 javascript 结果的机制来报告字符串长度string.length's?简单来说,我如何进入10Python?

我知道我可以手动迭代并折叠\r\n为单个字符,但我想知道是否有更强大的(甚至是内置的)方法来做到这一点?无论如何,如果有一个说明性的例子就太好了!


慕莱坞森
浏览 83回答 1
1回答

芜湖不芜

您可以使用比迭代更优雅的正则表达式。替换字符\n和\rby''就可以了。使用python的re模块。import rex = '123456\r\n\r\n\r\n7'y = re.sub(r'\r\n','\n',x)print(len(y)) #Answer will be 10
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript