Rumah > Soal Jawab > teks badan
Sudah ada dokumen berikut
<a id="" href=""></a>
<a id="" href=""></a>
<a id="" href=""></a>
Papan keratan sistem mengandungi kandungan berikut:
home
help
variables
Perlu disisipkan pada kedudukan ke-15 setiap baris untuk membentuk format berikut
<a id="" href="">home</a>
<a id="" href="">help</a>
<a id="" href="">variables</a>
如果vim不行,用awk可以吗?
Jawapan ini tidak bagus,
Masuk dulu
home
help
variables
Kemudian gunakan s
命令
输入 :%s/^/<a id="" href="">/g
回车
再输入 :%s#$#</a>#g
Masukkan
Jika saya pergi lebih jauh, saya perlu bermula dari asas ini
<a id="" href="">home</a>
<a id="" href="">help</a>
<a id="" href="">variables</a>
形成下面的
<a id="home" href="">home</a>
<a id="help" href="">help</a>
<a id="variables" href="">variables</a>
你又如何办?
再走远一点
<a id="home" href="home.html">home</a>
<a id="help" href="help.html">help</a>
<a id="variables" href="variables.html">variables</a>
你如何快速搞定??
滿天的星座2017-05-16 16:35:48
Alihkan kursor ke kiri atas di hadapan rumah
<C-v>jj$x<ESC>
Alihkan kursor ke sebelum yang pertama </a>
p
迷茫2017-05-16 16:35:48
Masuk dulu
home
help
variables
Kemudian gunakan s
命令
输入 :%s/^/<a id="" href="">/g
回车
再输入 :%s#$#</a>#g
Masukkan
高洛峰2017-05-16 16:35:48
Setelah melihat keperluan anda, saya rasa anda mungkin memerlukan pemalam coretan vim
PHP中文网2017-05-16 16:35:48
Untuk keperluan pertama, tidak perlu menggantikannya, ia boleh dicapai seperti ini:
Gambar agak besar Jika tidak boleh dimuatkan, ini alamat asalnya
Jujukan operasi:
Alihkan kursor ke kedudukan "<" "" dalam baris pertama, Ctrl+v
memasuki mod pemilihan lajur, jj$
memilih semua < ; /a>
, kemudian d
Ctrl+v
进入列选择模式,jj$
选中所有的 </a>
,然后 d
光标移至 "home" 那一行,Shift + v
进入行选择模式,jj
选中三行,然后 :right
,回车
$
把光标移至 "home" 结尾,按 p
粘贴
gv
选中所有,然后 :left
,回车
光标在第一行 "home" 的 "h" 上,Ctrl + v
进入列选择模式,jj$y
复制三行
gg$
光标移至第一行末尾,然后 p
第二个需求同理,剪切一下 id=""
Shift + v
untuk memasuki mod pemilihan baris, jj
untuk memilih tiga baris, dan kemudian :right< /code> untuk memulangkan Kereta🎜
🎜🎜$
Gerakkan kursor ke hujung "home" dan tekan p
untuk menampal🎜
🎜🎜gv
Pilih semua, kemudian :left
dan tekan Enter🎜
🎜🎜Kursor berada pada "h" "home" dalam baris pertama, Ctrl + v
memasuki mod pemilihan lajur, jj$y
menyalin tiga baris🎜 li>
🎜🎜gg$
Gerakkan kursor ke penghujung baris pertama, kemudian p
🎜
🎜Keperluan kedua adalah sama, cuma potong tanda petikan kedua id=""
dan kandungan berikut. Keperluan ketiga, saya tidak dapat memikirkan cara yang lebih baik pada masa ini🎜balas0
PHP中文网2017-05-16 16:35:48
Anda boleh menggunakan Bash+Sed untuk memprosesnya, tetapi ia seperti memprosesnya dalam bahasa pengaturcaraan
#! /bin/bash
i=1
rm sd.f
cat sd.in | while read LINE
do
echo "${i}s/>/>${LINE}/" >>sd.f
#echo "${i}s/id=\"/id=\"${LINE}/" >>sd.f #第二次处理
#echo "${i}s/ref=\"/ref=\"${LINE}.html/" >>sd.f #第三次处理
((i++))
done
#cat sd.f
sed -f sd.f test.txt
Catatan: test.txt ialah fail sumber yang akan diproses dan sd.f ialah fail yang dijana oleh program untuk menyimpan arahan pemprosesan sed. sd.in ialah nilai pembolehubah yang disimpan, iaitu rumah, bantuan... tiga nilai
世界只因有你2017-05-16 16:35:48
# 光标定位到第一行 a 标签
qa # 开始录制宏
<n>jyw # 复制要插入的文本
<n>kf>p # 回到对应到 a 标签,找到对应到位置,粘贴
j0 # 光标下移一行
q # 结束录制
2@a # 重播宏
# 上面的 <n> 是个数字,取决于你第一行 a 标签与第一行待插入文本之间的行数