有没有办法从软件中添加特殊字符以及如何操作

有没有办法从软件中添加特殊字符以及如何操作

我有个问题想问你,你知道是否有一个程序/软件可以轻松地在所有行中添加一个字符吗?例如,如果我想+在这些行前面添加一个字符,但不想逐行添加,可以吗?

+CONFIG_PACKAGE_git=y
+CONFIG_PACKAGE_git-http=y
+CONFIG_PACKAGE_htop=y
CONFIG_PACKAGE_https-dns-proxy=y
CONFIG_PACKAGE_ip-full=y
CONFIG_PACKAGE_ip6tables-nft=y
CONFIG_PACKAGE_iperf3=y
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
CONFIG_PACKAGE_iptables-mod-ipopt=y
CONFIG_PACKAGE_iptables-nft=y
CONFIG_PACKAGE_irqbalance=y
CONFIG_PACKAGE_kmod-crypto-authenc=y
CONFIG_PACKAGE_kmod-crypto-cbc=m
CONFIG_PACKAGE_kmod-crypto-cts=m
CONFIG_PACKAGE_kmod-crypto-deflate=m
CONFIG_PACKAGE_kmod-crypto-des=m
CONFIG_PACKAGE_kmod-crypto-lib-chacha20=y
CONFIG_PACKAGE_kmod-crypto-lib-chacha20poly1305=y
CONFIG_PACKAGE_kmod-crypto-lib-curve25519=y
CONFIG_PACKAGE_kmod-crypto-lib-poly1305=y
CONFIG_PACKAGE_kmod-crypto-md5=m
CONFIG_PACKAGE_kmod-crypto-sha1=m
CONFIG_PACKAGE_kmod-crypto-sha512=m
CONFIG_PACKAGE_kmod-crypto-xts=m
CONFIG_PACKAGE_kmod-cryptodev=y
CONFIG_PACKAGE_kmod-ifb=y
CONFIG_PACKAGE_kmod-ip6tables=y
CONFIG_PACKAGE_kmod-ipt-conntrack=y
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
CONFIG_PACKAGE_kmod-ipt-core=y
CONFIG_PACKAGE_kmod-ipt-ipopt=y
CONFIG_PACKAGE_kmod-ipt-ipset=y
CONFIG_PACKAGE_kmod-lib-zlib-deflate=m
CONFIG_PACKAGE_kmod-lib-zlib-inflate=m
# CONFIG_PACKAGE_kmod-mwifiex-sdio is not set
CONFIG_PACKAGE_kmod-nf-conncount=y
CONFIG_PACKAGE_kmod-nf-conntrack-netlink=y
CONFIG_PACKAGE_kmod-nf-ipt=y
CONFIG_PACKAGE_kmod-nf-ipt6=y
CONFIG_PACKAGE_kmod-nf-nat6=y
CONFIG_PACKAGE_kmod-nft-compat=y
CONFIG_PACKAGE_kmod-sched-cake=y
CONFIG_PACKAGE_kmod-sched-connmark=y
CONFIG_PACKAGE_kmod-sched-core=y
CONFIG_PACKAGE_kmod-tun=y
CONFIG_PACKAGE_kmod-udptunnel4=y
CONFIG_PACKAGE_kmod-udptunnel6=y
CONFIG_PACKAGE_kmod-wireguard=y
CONFIG_PACKAGE_libatomic=y
CONFIG_PACKAGE_libattr=y
CONFIG_PACKAGE_libavahi-client=y
CONFIG_PACKAGE_libavahi-dbus-support=y
CONFIG_PACKAGE_libbpf=y
CONFIG_PACKAGE_libbz2=y

答案1

是的,有很多种方法可以做到这一点,具体取决于您要寻找的内容。

sed -i -E 's/^(.*)$/\+\1/' file.txt

将在 file.txt 中的每一行前面添加一个 +,字面意思是:

for each line in file.txt
    take the passage of any characters between the beginning and end of the line
    and replace it with the same passage with a + prepended

正如评论中指出的那样,这可以最小化为:

sed -i 's/^/+/' file.txt

这意味着Replace the beginning of every line with a +

如果您想要更具选择性和交互性,Ivim 中的编辑操作会从行首开始编辑。将其与此处的.for repeat last edit 结合使用。这样做,您可以在一行中添加一个加号,按下 Esc,然后只需向下箭头到其他行,.无论在行的哪个位置单击,都可以以 开始该行+

答案2

使用 Notepad++ 或 Sublime Text 之类的程序。

将光标放在第一行(第 1 行,第 1 列)的开头。按住Shift+ Alt,然后单击最后一行(第 54 行,第 1 列)的开头。您应该看到左边框上有一个闪烁的光标,横跨所有行。

现在按下+,该按键将在所有选定的行上重复。

这在大多数文本编辑器和 SQL Server Management Studio 中有效,但在常规 Notepad.exe 或 Wordpad.exe(本机 Windows 文本编辑器)中无效。

另请参阅https://techcommunity.microsoft.com/t5/core-infrastructure-and-security/quick-tip-shift-alt-for-multiple-line-edits/ba-p/371355

答案3

大多数专为处理源代码而设计的优秀文本编辑器(Nodepad++、Sublime Text、VSCode、Vim、EMACS 等)都具有强大的搜索和替换语法,允许在行首进行匹配作为搜索表达式的一部分。这就是所谓的搜索模式中对正则表达式的支持的一部分。

在大多数这样的编辑器中,一个简单的^搜索模式和一个+作为替换文本就可以完成您在问题中描述的操作(例如,在 Vim 中就是这样:%s/^/+/)。

但是,您可能想要的(只在非空行中添加加号,并且不以#或开头+)相当棘手,确切的语法略有不同。对于 VSCode,您可能希望将^([^#+])和 作为搜索模式+$1作为替换文本。对于 Vim,它(通常)是:%s/^\([^#+]\)/+\1/。其他编辑器可能有自己的语法。

答案4

快速又肮脏...Excel记事本

在此处输入图片描述

突出显示该TAB字符,并将其替换为无:

在此处输入图片描述

最终结果:

在此处输入图片描述

PS:我是一名程序员。我使用 Notepad++。我还了解大量 shell 脚本,了解 RegEx、Python、PHP、NoSQL、SQL、React、Java、JavaScript 等等。

有时你只需要利用你所拥有的东西。

相关内容