Saya perlu membersihkan beberapa tabel di Word, di mana titik koma dan teks setelahnya berlebihan, misalnya
text1 ; text 2
di mana di atas adalah konten satu sel dan saya harus menghapus titik koma dan semuanya setelah itu sampai akhir sel ; sayangnya teks 2 tidak memiliki pola khusus.
Saya mencoba melakukan itu dengan Word bawaan menemukan dan mengganti menggunakan regex.
Karena ujung yang diinginkan dari ekspresi reguler saya adalah akhir sel, saya tidak dapat mencocokkannya, saya telah mencoba beberapa kombinasi karakter apa pun ;?*
;*
;?@
tetapi semua berhenti pada teks yang cocok paling pendek , apakah ada cara untuk membuatnya cocok sampai akhir sel?
regex
microsoft-word-2010
Máté Juhász
sumber
sumber
;?{1,}
bekerja?;
dan satu karakter setelahnya;?{1,9999}
harus bekerja? "{n,m}
cocok dari n ke m kemunculan karakter atau ekspresi sebelumnya";[ 0-9A-Za-z]*
Jawaban:
Ini sepertinya berfungsi:
Saya menggunakan tanda mata uang umum
¤
, Anda dapat menggunakan simbol lain yang Anda yakini tidak termasuk dalam teks yang mengikuti tanda titik koma (mungkin itu tanda titik koma itu sendiri).Sekedar catatan: membiarkan kurung kurawal kedua kosong tidak berarti string tanpa akhir, saya menemukan dengan uji coba bahwa luasnya terbatas pada 255 karakter.
sumber
{1,}
ke@
atau*
membuat pertandingan malas, serta mengganti[!#]
ke?
. Jadi saya tidak dapat menemukan logika di baliknya, tetapi ia bekerja :)Saya perlu menghapus titik koma dan semuanya setelahnya
Gunakan ekspresi reguler berikut:
{n,m}
cocok darin
hinggam
kemunculan karakter atau ekspresi sebelumnya^13
cocok dengan jeda paragrafSumber Temukan dan ganti teks dengan menggunakan ekspresi reguler (Lanjutan)
sumber
^13
itu tidak cocok dengan akhir sel^13
atau melanjutkan pencocokan ke sel berikutnya?;?{x,9999}
hanya cocok dengan titik koma danx
karakter berikut9999
mungkin;?{x,99}
atau sesuatu{1,}
hanya cocok dengan satu karakterSalin meja Anda di tempat lain; mengubahnya menjadi teks ( Tata Letak / Konversi ke teks ) dan pilih
Paragraph delimiter
.Lanjutkan mengganti
;*^13
dengan^9
, setelahUse wildcards
diperiksa. Potong blok teks ini.Pilih semua teks pada tabel asli dan tempel "hanya teks".
sumber