问题标签 [control-characters]

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 投票
2 回答
104167 浏览

python - 在 Python 中查找箭头键的值:为什么它们是三倍?

我试图找到我的本地系统分配给箭头键的值,特别是在 Python 中。我正在使用以下脚本来执行此操作:

然后我运行脚本,然后点击 UP DOWN RIGHT LEFT,这给了我这个输出:

这是异常的,因为它表明箭头键在我的系统上注册为某种形式的三元组 (27-91-6x),因为每次按下箭头键都会占用三个 get() 实例。相比之下,按 a、b、c 和 CTRL-C 会给出:

谁能向我解释为什么我的箭头键的值似乎存储为三元组?为什么会这样?这在所有平台上都一样吗?(我使用的是 Debian Linux。)如果没有,我应该如何存储箭头键的值?

这里的最终目标是我正在尝试编写一个程序,该程序需要正确识别箭头键并根据按下的箭头键执行功能。

0 投票
0 回答
1572 浏览

vb.net - KeyPress 事件中的多个按键检测

我正在使用 Visual Studio 2013 并在 VB.NET 中编写。我正在创建一个在学校实习的项目。现在,在我的一种表格中,我有它,您必须在其中输入您的姓名。这里有一些相关信息。

对于文本框,我确实有属性,ShortcutsEnabled = False因此如果这是我的问题,用户无法复制并粘贴到文本框中,那么我只需要不使用它。现在,我这样做是为了让我的错误检查 Sub 更简单、更简洁,这样我就不必检查 IsNumeric。我不必检查的原因是因为在文本框的 KEYPRESS (not keydown) 事件中我限制了允许的输入。

现在,我想做的是允许用户同时按下“Ctrl+A”,以便他们可以选择框中的所有文本以方便使用。请记住,我有 ShortcutsEnabled = False 的文本框属性

这不起作用:

新行 --> (e.KeyChar <> Chr(61) AndAlso ModifierKeys <> Keys.Control)然后

注意:因为我使用的是 KEYPRESS 事件而不是 keydown 事件,所以唯一e.key可行的代码是e.keychar||||| e.keycode并且e.keyvalue在此事件处理程序中不可用

0 投票
1 回答
1900 浏览

ruby - Ruby CSV 解析的非法引用错误

我知道有很多类似的问题,但我还没有找到解决方案。我正在尝试将 CSV 解析库与 Ruby 1.9.1 一起使用,但我不断得到:

我的 CSV 文件是在 Windows 7 中创建的,但我使用的是 Ubuntu 12.04 来运行 Ruby 脚本,如下所示:

没什么复杂的,只是一个测试,所以我认为它一定是 Windows 控制字符引起了问题。Vim 显示如下:

"第 1 部分";;;;^M
;;;;^M
;;;;^M
未能提交所得税申报表;;;;^M
姓名;地址;职业;“收费”;"罚款/罚款 £"^M
一些名字;"一些,地址";簿记员;3;1,250.00^M
一些名字;"一些,地址";Haulier;1;600.00^M
一些名字;"一些,地址";脚手架租用;1;250.00^M
一些名字;"some,address";Farmer;2;500.00^M
一些名字;"some,address";Builder;2;3000.00

我已经尝试删除 Windows 添加的回车 (^M) 的那些控制字符,但 %s/^V^M//g没有%s/^M//g找到任何模式。如果我运行%s/\r//g,则删除 ^M 字符,但是当我运行 Ruby 脚本时,同样的错误仍然存​​在。我也试过跑步set ffs=unix,dos,但没有效果。谢谢。

更新:
如果我删除第一行周围的双引号Part 1,那么脚本会打印出它应该打印的内容,然后抛出一个新错误:Unquoted fields do not allow \r or \n (line 10). 如果我然后删除\r字符,脚本运行良好。

我知道我必须删除这些\r字符,但为什么只有在我取消引用第一个值时它才会起作用?

0 投票
1 回答
345 浏览

printing - 标准 ML 打印控制字符

所以我偶然发现了一个奇怪的小问题。我想打印控制字符,它应该打印那个奇怪的小框,表明我正在尝试打印一个不可打印的字符。

当我尝试:

它工作正常。但是,当我这样做时:

它从字面上打印“\^C”。这对我来说没有任何意义,他们不应该打印同样的东西吗?Char.toString 不会将字符转换为包含一个字符的字符串,而是将其转换为包含 3 个字符的字符串,即 '\'、'^' 和 'C'。

请有人向我解释这种行为吗?谢谢。

0 投票
3 回答
392 浏览

python - 如何从这种字符串中删除不必要的字符?

我想删除"[1m"and "[0m"。我尝试使用编码encode('utf-8')无效。

请帮忙。

0 投票
0 回答
440 浏览

php - PHP:已解析的充满控制字符的 PDF 文件

我在解析这个 pdf 文件时遇到问题:

http://www.transperfect.com/sites/default/files/imported/pdf/Tokyo_Client_Services_Representative.pdf

在我对 FlateDecode 解码的 pdf 文件进行编码后,输出是这样的:

在此处输入图像描述

通常很容易解析内容,因为文本内容总是在打开的“(”和关闭的“)”括号内,但这个 pdf 文件让我头疼。括号内似乎只有控制字符。

我当前的输出如下:

在此处输入图像描述

这里有人对此有所了解吗?我究竟做错了什么 ?

0 投票
2 回答
665 浏览

linux - syslog-ng 是否支持消息中的新行控制字符?

我已经为在 sles 10 上运行的 java 应用程序配置了 syslog-ng,当发生异常时,它会显示堆栈跟踪而没有换行。

任何建议表示赞赏。

0 投票
2 回答
1658 浏览

java - 在 Java 中查找以字节编写的控制字符

我有一个关于控制字符的问题。我必须在一个字符串中找到它们并删除它们。进行了一些研究并找到了有用的提示。

我写了这个:

但是有人问我,如果控制字符以字节为单位,这种方法是否可以找到控制字符。老实说,我不知道。尝试在网上看,但不知道我如何测试它。

谢谢

0 投票
3 回答
872 浏览

c# - 文件名中的 0x202A:为什么?

我最近需要在 SQL 中对 varbinary 图像执行 isnull 操作。
到目前为止(异常)正常。我很快编写了一个 C# 程序从我的桌面读取文件 no_image.png,并将字节输出为十六进制字符串。

该程序是这样开始的:

由于我之前无数次使用 readallbytes,我觉得没什么大不了的。
令我惊讶的是,我在 ReadAllBytes 上遇到了“NotSupported”异常。

我发现问题是当我右键单击文件时,转到选项卡“安全”,然后复制粘贴对象名称(从右侧开始标记并不准确地向左移动),就会发生这种情况。

而且它只发生在 Windows 8.1(也许是 8)上,但不会发生在 Windows 7 上。

202A

当我输出有问题的字符串时:

我明白了:

首先,当我在 ascii 中查找 20 2A 时,它是 [space] + *

由于我既没有看到空格也没有看到星星,所以当我 google 20 2A 时,我得到的第一件事是德国刑法的第 202a 段 http://dejure.org/gesetze/StGB/202a.html

但我认为这是一个相当不幸的巧合,它实际上是 unicode 控制字符“从左到右嵌入”(U+202A) http://www.fileformat.info/info/unicode/char/202a/index。 htm

这是一个错误,还是一个功能?
我的猜测是,这是一个错误的功能。

0 投票
2 回答
267 浏览

vim - Vim:在不影响终端控制字符的情况下映射 Esc

我正在尝试映射<Esc>以关闭 Vim 中的搜索突出显示。问题是终端模拟的键+Esc受到影响。

终端发送字符的速度比我输入的快得多。有没有办法在vim中映射键+超时?

4年前问过同样的问题,答案是做不到。这(仍然)是真的吗?

映射:nohlsearch 转义键