小编Mat*_*boz的帖子

Emacs:正则表达式替换为更改大小写(在脚本中)

这与Emacs有关 :正则表达式替换为更改大小写

我的另一个问题是我需要编写搜索替换脚本,但"\,()"只有在交互使用时,解决方案才适用(对我而言)(emacs 24.2.1).在脚本内部,它给出错误:" \'替换文本中的无效使用".

我通常会在某些文件中写一个"执行替换",以便在需要时加载.类似于:(

执行 - 替换"<\\([^>]+\\)>" "<\\,(downcase \1)>"tt nil 1 nil(point-min)(point-max))

应该可以调用一个函数来生成替换(pg 741 of the emacs lisp manual),但我尝试了以下的许多变体而没有运气:

(defun myfun ()
    (downcase (match-string 0)))

(perform-replace "..." (myfun . ()) t t nil)
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

regex emacs replace

5
推荐指数
1
解决办法
698
查看次数

python编码错误仅在被调用为外部进程时

像一个简单的文件

$ cat x.py
x = u'Gen\xe8ve'
print x
Run Code Online (Sandbox Code Playgroud)

跑步时会给我:

$ python x.py
Genève
Run Code Online (Sandbox Code Playgroud)

但是,当作为"命令替换"运行时,将给出:

$ echo $(python x.py)
...
UnicodeEncodeError: 'ascii' codec...
Run Code Online (Sandbox Code Playgroud)

我尝试过使用不同的终端模拟器(xterm,gnome-term)和ttyS上的控制台.用bash和sh.用python2.4和2.7.在运行python之前,我已经尝试将LC_ALL或LANG设置为某些utf-8语言环境.我检查了sys.getdefaultencoding().没有任何帮助.

当从另一个进程(如java)调用脚本时也会出现问题,但上面是我发现复制它的最简单方法.

我不明白这两个电话之间有什么区别.有人可以帮忙吗?

python bash encoding invocation

4
推荐指数
1
解决办法
1442
查看次数

标签 统计

bash ×1

emacs ×1

encoding ×1

invocation ×1

python ×1

regex ×1

replace ×1