Articles of 特殊字符

如何replaceHTTP请求URI中的特殊字符?

在基于Zend Framework 2的网站上(在nginx上的testing环境和Apache上的实时环境),有一个“课程”类别,它的页面具有这样的URI: domain.tld/courses/123-Name of course that can contain ®, €, (, ), and other special chars 课程名称来自数据库,并且是内部链接的URL编码: domain.tld/courses/123-Name%20of%20course%20that%20can%20contain%20%C2%AE%2C%20%E2%82%AC%2C%20%C3%A4%2C%20(%2C%20)%2C%20and%20other%20special%20chars 这工作正常,但是当我尝试访问一个页面使用特殊的字符而不编码404错误发生。 一个使用空间字符的网站的例子是维基百科。 您可以使用 http://en.wikipedia.org/wiki/Signal_(electrical_engineering) 要么 http://en.wikipedia.org/wiki/Signal_%28electrical_engineering%29 并总是得到你想要的网页。 有人知道,如何实现这样的行为(“维基百科”)? (也许用HTTPredirect.htaccess规则?) 更新: 的/ etc / nginx的/ AX-共同的虚拟主机 server { listen 80; server_name foo.loc bar.loc baz.loc ; if ($host ~ ^(?<project>.+)\.(?<area>.+)\.loc$) { set $folder "$area/$project"; } access_log /var/log/nginx/$area/$project.access.log; error_log […]

用fprintf发送一个箭头键

我正在testingpipe道,并打了一个小路障。 我想能够模拟通过由popen打开的文件指针按右箭头键。 文件指针在不同的terminal上打开一个显示程序,就像投影仪一样。 我想发送一个信号来推进下一个图像(右箭头键)。 我怎么去发送这个信号? 我意识到这将是特定于我的电脑(BOIS /键盘设置),但我不希望这是便携式无论如何。 从我的试验看来,通过fprintf发送的所有内容都被解释为可读的字符,而不是特殊的编码。 幻灯片程序不能更改,所以这不是一个选项。 任何方向将不胜感激。

c + +不能将string转换为wstring

我想将一个stringvariables转换为wstring由于一些德语字符在variables上执行substr时会导致问题。 当这些特殊字符出现之前,起始位置就是伪造的。 (例如:对于“ä”大小()返回2而不是1) 我知道以下转换工作: wstring ws = L"ä"; 因为,我想转换一个variables,我想知道是否有一个替代方式,如 wstring wstr = L"%s"+str //this is syntaxically wrong, but wanted sth alike 除此之外,我已经尝试了下面的例子将string转换为wstring: string foo("ä"); wstring_convert<codecvt_utf8<wchar_t>> converter; wstring wfoo = converter.from_bytes(foo.data()); cout << foo.size() << endl; cout << wfoo.size() << endl; ,但我得到像这样的错误 'wstring_convert' was not declared in this scope 我使用的是Ubuntu 14.04,我的main.cpp是用cmake编译的。 谢谢你的帮助!

在unix中处理来自文件名的无效字符

我需要对具有“!”的文件执行一些linux命令操作 像文件名中的字符。 但是每当我尝试执行这些命令时,我都会遇到错误。 [root@ATD-6000 ~]# cat a!aapoorv.txt -bash: !aapoorv.txt: event not found 我使用paramiko模块在python中执行这些命令。 我不能使用原始stringr'filestringname,因为我正在从数据库本身读取string名称。 如何逃脱/处理这些使用python / bash的人物之王。

用linux sedreplace带有特殊字符的string

我已经阅读了大量的post,了解如何正确地使用sed来逃避string内的空格和特殊字符,但是我仍然无法做到,这就是我正在努力实现的目标。 我有一个文件包含这样的一些string: JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.jsessionid=some_value" 我想用下面的代码来replace'some_value': sed -i "s/^\(JAVA_OPTS=\"\$JAVA_OPTS[ \t]*-Dorg\.apache\.catalina\.jsessionid*=\s*\).*\$/\1$DORG_APACHE_CATALINA_JSESSIONID/" $JBOSS_CONFIGURATION/jboss.configuration $ JBOSS_CONFIGURATION是一个包含绝对Linuxpath的variables。 jboss.configuration是一个文件,我指向作为replace操作的目标。 $ DORG_APACHE_CATALINA_JSESSIONID包含我想要的值而不是“some_value”。 请注意,模式: JAVA_OPTS="$JAVA_OPTS -D 总是存在的,而org.apache.catalina.jsessionid是我试图用这个脚本replace的variables值的一个例子。 什么是缺失/错误? 我试图逃脱空白使用\ s没有成功,并回应整体给我以下几点: echo "s/^\(JAVA_OPTS=\"\$JAVA_OPTS[ \t]*-Dorg\.apache\.catalina\.jsessionid*=\s*\).*\$/\1$DORG_APACHE_CATALINA_JSESSIONID/" s/^\(JAVA_OPTS="$JAVA_OPTS[ \t]*-Dorg\.apache\.catalina\.jsessionid*=\s*\).*$/\1/ 回声解释search模式为sed呢? 任何信息/帮助/替代方法,非常欢迎,谢谢大家

为什么^ M和^ [被追加到我的文件?

我注意到,有时Vim在每行的末尾显示^M ,或者^[在左括号[前面。 这些字符是什么意思,我该如何摆脱它们? 我在Debian上运行Vim 7.3。

Windows文件path中与特殊字符有关的安全漏洞

我可能在我的Windows应用程序中发现了安全漏洞。 它从用户处获取一个string并应用以下逻辑: string fileName = userInput + ".notSecret"; return new FileStream(fileName, FileMode.Open, FileAccess.Read); 用户是否可以input任何字符,以便通过尽早终止文件名来input新的文件扩展名? 例如: “secret_file.Secret \ 0”

如何在UNIX上使用envvariables名称删除具有特殊字符和目录的目录名称

我在这个库中search,我没有发现任何类似的问题,或者可能是我的search是不正确的。 我在我的客户端环境中遇到这个问题,自定义应用程序正在创build一个环境variables为“$ SRCDIR”和“$ HOME”的目录,而在创build这些目录的目录中,本身就是HOME目录path。 如果我说rm -rf $HOME那么当前目录$ HOME下的所有文件和子目录都将被删除。 如何删除这些不需要的目录。 -rw-r–r– 1 grp domain users 418051450 Apr 18 18:09 $SRCDIR -rw-r–r– 1 grp domain users 418051450 Apr 18 18:09 $HOME 还有一些目录是垃圾字符,如下例所示。 -rwxr-xr-x 1 grp domain users 0 Feb 7 2106 ??????w?O???*????_6??t??Ó¡?>?tP??Ñ?|?C 我如何删除它们?

我如何grep一个大于符号?

我正在尝试grep的一个PHP函数调用 grep -Ri '->someFunction' . 但它不工作。 我究竟做错了什么?

如何在批处理中的echo命令中使用重音字符?

你好堆栈溢出的人。 我和我的朋友正在使用Batch / .bat编程语言进行游戏。 直到这一点,我们没有任何问题,我们无法修复。 但是,当我开始把它翻译成西class牙语版本时,我们遇到了问题。 当我试着用西class牙语的口音(例如Á,É)让这个节目“回声”的话,它不会奏效。 我已经build立了一个testing页,其中有程序回声"áéíóú"但它出来了别的东西,我现在不能复制和粘贴。 当我testing俄文/西里尔字母键盘时遇到类似的问题。 在testing俄语时,我将字符集设置为437,testing口音时设置为1251。 当我保存它时,甚至在Bat文件代码中改变了特殊字符。 有什么特别的我需要做的特殊字符出现? 再次,我只是试图在echo命令上使用它们。