0

我正在使用 Emacs、Notepad++ 或 Eclipse。有没有办法将字符串切成小块并使用分隔符连接它们?

例如: 输入:

"I like sushi and maki"

输出:

"I like" +
"sushi and" + 
"maki"
4

3 回答 3

0

以下是我对这个问题的看法。不确定我是否解决了正确的问题:)

(defun split-string-words (min max)
  (interactive "r")
  (let ((counted 0) (before-indent min)
        (wordcount (read-number "How many words in a line? " 7))
        (delimiter
         (read-string "Delimit with (default: \" + \") "
                      nil nil "\" + \"")))
    (save-excursion
      (goto-char min)
      (while (< min max)
        (incf counted)
        (when (= counted wordcount)
          (insert delimiter)
          (backward-char)
          (incf max (length delimiter))
          (setq before-indent (point)
                counted 0)
          (newline-and-indent)
          (incf max (- (point) before-indent)))
        (forward-word)
        (setq min (point))))))

使用应该是直截了当的。还要检查您的<mode>-insert-and-indent功能的编辑模式,您想使用它而不是newline-and-indent.

于 2012-07-03T13:38:16.610 回答
0

在记事本++中,您可以使用 RegEx: ([\w]+)\s*([\w]*) 然后替换为,"$1 $2" + 但随后您将不得不返回并+从只有一组匹配的末尾替换中删除无关的符号。

于 2012-07-03T02:02:13.607 回答
0

在 Eclipse 中(至少在 Java 上下文中),您只需将光标放在字符串内并按 Enter 键。这也适用于 Netbeans。

于 2012-07-03T01:49:25.687 回答