想象一下在 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为单个字符,但我想知道是否有更强大的(甚至是内置的)方法来做到这一点?无论如何,如果有一个说明性的例子就太好了!
1 回答
芜湖不芜
TA贡献1796条经验 获得超7个赞
您可以使用比迭代更优雅的正则表达式。替换字符\n和\rby''就可以了。
使用python的re模块。
import re
x = '123456\r\n\r\n\r\n7'
y = re.sub(r'\r\n','\n',x)
print(len(y)) #Answer will be 10
添加回答
举报
0/150
提交
取消