如何实现「把一段文字每隔一个字就隐藏一个字」?(内容有改动)

你居然连审题都不会 你应该没有用过org-drill

你的输出应该是

你[好]騒[啊]

你还得处理逗号、空格、换行符

如果人家要求你显示一句、隐藏一句,你不能做太多的改动。

他已经学到了怎么提取中文字符。我也演示了怎么加方括号。unix思维总得有点吧

(replace-regexp-in-string "\\(\\cC\\)\\(\\cC\\)" "\\1[\\2]" "你好騒啊")
ELISP> (thread-last "你说, 我怎么不从盘古开天僻地开始讲呢???????、\n 对不对?"
         (replace-regexp-in-string (rx (1+ (not (category chinese-two-byte)))) " ")
         (replace-regexp-in-string (rx (group-n 1 (category chinese-two-byte)) (group-n 2 (category chinese-two-byte)))
                                   "\\1[\\2]"))
"你[说] 我[怎]么[不]从[盘]古[开]天[僻]地[开]始[讲]呢 对[不]对 "

有人可以回答我的问题吗


我吹perl干嘛,人家Unicode支持牛批啊!

万一楼主用到了扩展区的字符呢 Elisp也可以正确匹配扩展区字符

4 个赞

老毛病 还真不好改

咱两各自用perl写个实现怎样

要求如下:

输入文本:

易学看人,不置可否。本人就觉得python的语法很怪异,我用Javascript。

输出文本,可根据配置输出四种不同的格式:

格式1:

易[学]看[人],不[置]可[否]。本[人]就[觉]得[python]的[语]法[很]怪[异],我[用]Javascript。

格式2:

[易]学[看]人,[不]置[可]否。[本]人[就]觉[得]python[的]语[法]很[怪]异,[我]用[Javascript]。

格式3:

易学看人,[不置可否]。本人就觉得python的语法很怪异,[我用Javascript]。

格式4:

[易学看人],不置可否。[本人就觉得python的语法很怪异],我用Javascript。
1 个赞

你用JS也行

程序员约架的方式。。。哈哈哈

这是要打仗了吗?:sweat_smile:

Perl 5 还是 6 啊

只有perl5

(defun my-hide (beg end)
  (interactive "r")
  (let ((pt beg)
        (i 1))
    (while (<= pt end)
      (when (aref (char-category-set (char-after pt)) ?C)
        (when (cl-evenp i) ; `cl-evenp'用来隐双数字,`cl-oddp'用来隐单数字。
          (put-text-property pt (1+ pt) 'display
                             ;; 原地替换"离"为"_"、"*"或者"[离]"。
                             (concat "[" (char-to-string (char-after pt)) "]")))
        (cl-incf i))
      (cl-incf pt))))

org-drill要求是 [啊]

text-property可没用

没用过"org-drill",我是在"emacs-lisp-mode"下根据"xuchunyang"的代码改的,请原谅我的粗心大意所造成的困扰。

没有rx别想骗我写正则

https://paste.ubuntu.com/p/mGQB7Mf2t4/

2 个赞

有bug

(cm/mask-string "易学看人啊,不置可否。" nil t)

应该输出为

"[易]学[看]人[啊],不[置]可[否]。"

这个要求是楼主提的

您写一个吧,反正也不难

我写了,我说不难,请问你有什么问题?

你已经空手套了我这么多代码,是不是该自己写点表示尊敬?

你可以放弃的,因为你自己也觉得难


我横竖看了整栋楼,楼主提了这种需求?你又成了楼主了?

我寻思我没有漫天要价,你也不能坐地还钱吧。

就这样吧

我有说过 “不难” 吗

放弃哦

我是不是要去翻翻链接

这句话好像是我对你说过的

1 个赞

Today I learned 写正则是程序员约架的常用方式

1 个赞