问题标签 [rawstring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2841 浏览

swifty-json - swiftyjson 无法将 rawstring 转换回 json 对象

我有一个像 thies {"test" : "test"} 这样的 json 对象,但是如果我将其转换为 SwfiftyJSON.JSON 对象,然后通过函数 rawString() 获取原始字符串,然后我将原始字符串转换为 json 对象,但不幸的是,我无法获取正确的 json 对象,如果我尝试获取“测试”属性或任何其他属性,它总是返回 nil,这是怎么回事?

0 投票
2 回答
513 浏览

python - 理解python中正则表达式的原始字符串

我有很多充满换行符的文本文件,我在 python 3.4 中解析它们。我正在寻找换行符,因为它们将我的文本分成不同的部分。下面是一个文本示例:

\n我天真地开始在我的正则表达式 (RE) 中寻找带有 ' ' 的换行符,而没有想到反斜杠 ' \' 是一个转义字符。但是,结果证明效果很好:

然后,我明白我应该使用双反斜杠来寻找一个反斜杠。这也很好用:

但是在另一个线程上,我被告知使用原始字符串而不是常规字符串,但是这种格式无法找到我正在寻找的换行符:

你能帮帮我吗?为了正确匹配换行符,我应该使用什么 RE 之王有点困惑。

0 投票
2 回答
1526 浏览

python - 如何在python中将二进制文件作为原始字符串打开?

我有一个用 imageJ 脚本编写的宏。我需要将此宏重写为python3.4。我以阅读模式打开了一个二进制文件:

然后,当我试图找到一种如何以b_f原始字符串打开的方法时,我遇到了问题。在 imageJ 脚本中,它看起来像这样: s=File.openAsRawString(b_f,2*192*(1+sizeY)*reg); File.openAsRawString(path, count)- 打开一个文件并返回第一个 count 字节作为字符串。

python中是否有一些简单的方法可以将二进制文件作为原始字符串打开?我对python完全陌生。提前感谢您的帮助。

0 投票
7 回答
17054 浏览

javascript - ES6 Raw String Access 的实际用途是什么?

String.rawECMAScript 6 中引入的 Raw String Access 的实际用途是什么?

我浏览了以下文档。

http://es6-features.org/#RawStringAccess

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/raw

http://www.2ality.com/2015/01/es6-strings.html

https://msdn.microsoft.com/en-us/library/dn889830(v=vs.94).aspx

我唯一理解的是,它用于获取模板字符串的原始字符串形式并用于调试模板字符串。

什么时候可以在实时开发中使用?他们称之为标签功能。这意味着什么?

我错过了哪些具体的用例?

0 投票
2 回答
1039 浏览

python - 如何使用 Python 处理 Windows 路径中的 \2?

我运行一个外部函数,它将磁盘上文件的 Windows 路径作为字符串返回(字符串的一部分: Error details are at "C:\Users\ADMINI~1\AppData\Local\Temp\2\BuildErrors.txt" Succeeded

因此,我将返回的结果加载到一个字符串变量中: s = '''Error details are at "C:\Users\ADMINI~1\AppData\Local\Temp\2\BuildErrors.txt" Succeeded''' file_path = s.split('"')[1] print file_path

> C:\Users\ADMINI~1\AppData\Local\Temp\BuildErrors.txt#(后面有STX图标Temp

如果我file_path在 Python Shell 中访问,它的打印如下:

file_path 'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\x02\\BuildErrors.txt'

我知道这\2是在 Python 中作为特殊字符处理的,但这使我无法读取文件,因为路径无效。

当我从外部函数获取字符串时,我已经有一个字符串对象,据我所知,您无法从中创建原始字符串 ( r'')。

我已经尝试s.encode('string-escape')过源字符串,但它保持\x02原位。

如何通过处理\2in 来生成有效路径?

0 投票
1 回答
619 浏览

python - 为什么正则表达式理解 \n 没有 r 前缀?

我一直在阅读很多问题以找到答案,如果我错过了,我很抱歉。

假设我有一个只包含换行符的文本。
text ='\n'

因为正则表达式使用反斜杠字符 ('\') 来转义 Python 等特殊含义字符,所以我们将使用原始字符串表示法匹配换行符,就像这个答案所建议的那样。(如果我错了,请纠正我)

所以我们会这样做regex = re.compile(r'\n'),正则表达式解析器可以读取反斜杠和字符“n”并将其解释为换行符。

我的问题是为什么regex = re.compile('\n')也有效?

我尝试这样做regex.match(text),结果是<_sre.SRE_Match object; span=(0, 1), match='\n'>,这与原始字符串表示法相同。


是因为这里写的文件?其中说:

Python 字符串文字支持的大多数标准转义符也被正则表达式解析器接受: \a \b \f \n \r \t \v \x \\

有人可以详细解释一下吗?

0 投票
1 回答
557 浏览

php - PHP 从二进制字符串中解压单个字节

我有一个原始字节字符串 $b 来自

我需要知道 $b[$ix] 的值。我找到的唯一方法是

但是对于这样的基本操作,它似乎太多了。

有没有更直接的方法来访问原始字符串中的字节?

0 投票
4 回答
21083 浏览

python - Python 路径和原始字符串

我对路径+文件的名称(这是函数的输入)有一些问题。这有效:

这不起作用:

我想做的是以下(但也不起作用[Errno 22] invalid mode ('rb') or filename:):

如何在不使用“”的情况下获得名称前面的“r”?或者,有没有可能不放在r路径前面?

0 投票
2 回答
469 浏览

c++ - Code::Blocks 中的原始字符串?

我正在从文件中读取目录,例如我加载了这个"Main\Characters\Player.xxx",所以我想创建文件夹 Main 和 Characters。我尝试使用这种方法(从字符串中删除 Player.xxx 之后)“:

但是,'\' 被视为转义而不是反斜杠,最佳解决方案是将每个 '\' 替换为 '\' 但这会将我的工具从 O(n) 增加到 O(2n),因为它需要30 秒完全完成每个部分。有没有办法在 Code::Blocks 中使用原始字符串?因为R"(\w\\\w)";没有为我做这项工作。(R 未在此范围内声明)

任何其他不围绕原始字符串的解决方案也是受欢迎的。

0 投票
3 回答
28277 浏览

python - Python Argparse:原始字符串输入

抱歉,如果之前有人问过这个问题,我确实搜索过它,但所有点击似乎都是关于 python 原始字符串,而不是关于 argparse。

无论如何,我有一个代码,用户输入一个字符串,然后处理这个字符串。但是,我有一个问题,因为我希望我的代码能够区分\n\\n以便用户可以控制他们是否获得换行符或\n出现在输出中(分别)。

这本身很简单,我可以让逻辑工作来检查字符串等。但是,argparse 似乎并没有保持输入字符串的原始状态。因此,如果我要写:Here is a list:\nItem 1它会被解析为Here is a list:\\nItem 1. \n如果我在输入字符串中替换为完全相同的内容,则解析完全相同的内容\\n,因此无法区分两者。

我可以包含一个 bodge(例如,我可以让用户输入 say $\nfor\n以显示在输出中,或者只是\n换行)。但这很混乱并且使代码的使用复杂化。

有没有办法确保 argparse 解析的字符串是原始的?(即,如果我输入\n它解析\n而不是\\n

再一次,很抱歉,如果以前有人问过这个问题,但我找不到答案,经过一个多小时的尝试寻找答案,我没有想法(禁止)。提前为任何和所有帮助干杯。

示例代码(对不起,如果这不起作用,不确定如何最好地为 argparse 做示例代码!):