คำถามติดแท็ก regex

หรือที่เรียกว่านิพจน์ปกติหรือ regexp คำอธิบายของชุดสตริงมักใช้สำหรับค้นหาและตรวจสอบสตริง

2
การลบไฟล์ที่ตรงกับการแสดงออกปกติช่วงตัวเลข
ฉันมีโฟลเดอร์ที่มีไฟล์มากมาย ไฟล์ข้อมูลบางไฟล์มีป้ายกำกับ 1, 2, 3, ... , 300 ฉันต้องการลบไฟล์ข้อมูลเหล่านี้โดยใช้เทอร์มินัล ฉันจะทำสิ่งนี้ได้อย่างไร ฉันต้องการทำบางสิ่งเช่น rm some-regular-expression-giving-numbers-from-0--300
13 bash  terminal  regex  rm 

4
Grep multiline pattern
ฉันจะค้นหาวลีผ่านหลายบรรทัดได้อย่างไร เช่นช่วยให้มีวลี "ชาน้ำแข็งของฉัน" จากนั้นก็อาจถูกห่อในไฟล์ข้อความ: as js skdfh dfh djh sf my ice tea. grep จะไม่ตรงกันเนื่องจากมีการขึ้นบรรทัดใหม่ในระหว่าง ฉันจะจับคู่เหล่านั้นได้อย่างไร อีกรูปแบบหลายบรรทัดก็จะเป็นpattern1_\n_pattern2 ฉันรู้ว่าวิธีที่ง่ายที่สุดที่ฉันทำตู้เอทีเอ็มเป็นเพียง grep สำหรับส่วนหนึ่งเช่นเพียงแค่น้ำแข็งกับธง -A2 -B2 และจากนั้นในการส่งออก againg เช่นชา แต่นี่น่าเบื่อมาก ดังนั้นฉันจึงถูกขัดจังหวะว่าคุณจะแก้ปัญหานี้อย่างไร
13 grep  regex  newlines 


3
มีคำสั่งใน Mac OS X ที่สามารถทำการค้นหาหลายบรรทัดได้หรือไม่
ฉันต้องการทำการค้นหา regex แบบง่าย ๆ ซ้ำ ๆ ผ่านไดเรกทอรีที่ไม่ จำกัด บรรทัดเดียว ฉันลอง grep และ ack แต่ดูเหมือนจะไม่สนับสนุนสิ่งนี้ ฉันรู้ว่ามันไม่ควรมีราคาแพงเกินไป (ในกรณีของฉัน) เพราะโปรแกรมแก้ไขข้อความที่ฉันเลือก ( Sublime Text ) สามารถทำได้ดี ฉันแค่มองหาเวอร์ชั่นบรรทัดคำสั่งง่ายๆ Google เปิดใช้งานpcregrepแล้ว แต่ฉันหา Mac ไม่เจอ ฉันแค่มองไม่ถูกที่ใช่ไหม?
12 macos  grep  regex  ack 

1
Regex สำหรับ“ หรือ” ของคำหลายคำใน grep
[Computer]$ grep "foo|bar" filename ฉันเข้าใจว่าคำสั่งดังกล่าวควรกลับแต่ละบรรทัดในชื่อไฟล์ที่มี "foo" หรือ "bar" ออก หน้าคนยืนยัน | ในฐานะ Regex หรือสัญลักษณ์และรหัสใช้งานได้กับ "foo" และ "bar" โดยอิสระ ฉันกำลังคิดถึงอะไร
12 bash  unix  regex  grep 

1
การแทนที่ [0-9] ด้วย [AJ] ไม่ทำงานกับ sed
ฉันกำลังทำงานกับคำสั่งที่แทนที่ตัวเลขทั้งหมด 0-9 ด้วยตัวอักษรที่เกี่ยวข้องใน sed ฉันรู้ว่าฉันกำลังทำอะไรผิดพลาด แต่ sed ไม่ได้ตีความ regex การเปลี่ยนเป็นอะไรเลยยกเว้นสตริงตัวอักษร คำสั่งที่ฉันใช้คือ sed -r 's/[0-9]/[A-J]/g' log > ~/output.txt ดูเหมือนจะตรงไปตรงมากับฉัน แต่ฉันติดอยู่กับมันประมาณหนึ่งชั่วโมง ผลลัพธ์ที่ฉันได้รับเพียงแทนที่ 0-9 ด้วยสตริง "[AJ]"

6
rsync โดยใช้ regex เพื่อรวมเฉพาะบางไฟล์
ฉันกำลังพยายามที่จะใช้ rsync เพื่อคัดลอกบางไฟล์ซ้ำลงเส้นทางที่ขึ้นอยู่กับรูปแบบชื่อไฟล์ของพวกเขากรณีตาย นี่คือสิ่งที่ฉันได้ทำเพื่อเรียกใช้ rsync: $ rsync -avvz --include ='*/' --include='.*[Nn][Aa][Mm][E].*' --exclude='*' ./a/ ./b/ ไม่มีการคัดลอกอะไรเลยผลลัพธ์ของ debug จะแสดง: [sender] hiding file 1Name.txt because of pattern * [sender] hiding file 1.txt because of pattern * [sender] hiding file 2.txt because of pattern * [sender] hiding file Name1.txt because of pattern * [sender] …
11 regex  linux  shell  backup  rsync 

2
เพิ่มตัวละครให้กับทุกหมายเลขผ่าน Regex ใน Notepad ++
ฉันมีคำถามพื้นฐานมากซึ่งฉันไม่สามารถไปไหนมาไหนได้ ฉันมีเอกสารข้อความเช่นนี้: This is 5 a test! This 3 is a test! This is a 9 test! และฉันต้องการให้มีลักษณะเช่นนี้: This is 5c a test! This 3c is a test! This is a 9c test! หมายถึงฉันต้องการเพิ่ม 'c' ให้กับทุกหมายเลขที่ฉันค้นหา ฉันลองสิ่งนี้: Find what: [0-9]+] Replace with: $1c Search Mode: Regular expression แต่เห็นได้ชัดว่าฉันกำลังทำอะไรผิดเพราะมันไม่ทำงาน ความช่วยเหลือจะได้รับการชื่นชม ขอบคุณ!
10 notepad++  regex 

4
ทดแทนแบ็กสแลชสำหรับฟอร์เวิร์ดสแลชในคำสั่งสุดท้าย
ฉันได้คัดลอกคำสั่งcd C:\foo\bar\จาก PowerShell ไปยัง Cygwin และคาดหวังอย่างเต็มที่ว่ามันจะทำงาน ตอนนี้ฉันพยายามเรียกใช้การทดแทนเพื่อแทนที่ทั้งหมด\ด้วย/: $ !!:gs/\\/\/ bash: :gs/\\/\/: substitution failed ไม่แน่ใจว่าทำไมฉันถึงได้รับการทดแทนล้มเหลว ฉันก็ลอง: $ !!:gs/\\/q เพียงเพื่อดูว่าแทนที่เป็นปัญหา มันไม่ใช่. ตอนนี้ฉันอยากรู้อยากเห็น! ทำไมฉันถึงได้รับ "การทดแทนล้มเหลว"?
10 bash  cygwin  regex 


3
Windows: คัดลอก / ย้ายไฟล์ด้วยนิพจน์ปกติของชื่อไฟล์หรือไม่
โดยทั่วไปฉันต้องการเรียกใช้: C:\>xcopy [0-9]{13}\.(gif|jpg|png) s:\TargetFolder /s ฉันรู้ว่าxcopyไม่รองรับการค้นหาชื่อไฟล์นิพจน์ปกติ ฉันไม่สามารถหาวิธีทราบได้ว่าPowerShellมีCmdletไฟล์ที่จะคัดลอกหรือไม่; และถ้าเป็นเช่นนั้นจะรู้ได้อย่างไรว่ามันรองรับการจับคู่ชื่อไฟล์นิพจน์ปกติหรือไม่ ทุกคนสามารถคิดวิธีการคัดลอก / ย้ายไฟล์ซ้ำด้วยการจับคู่ชื่อไฟล์ regex?

1
ตรงข้ามกับ: g ในกลุ่ม?
:gฉันรู้วิธีการทำอะไรบางอย่างกับสายที่ตรงกับรูปแบบที่ทุกคนใช้ มีวิธีทำบางอย่างกับทุกบรรทัดที่ไม่ตรงกับรูปแบบหรือไม่? ตัวอย่างเช่นสมมติว่าฉันต้องการลบทุกบรรทัดที่ไม่ตรงกับ / foo / ฉันอาจทำสิ่งที่ชอบ: :G/foo/d ( :Gไม่ตรงข้ามกับ:gแต่นั่นคือสิ่งที่ฉันกำลังมองหา) ความคิดใด ๆ
10 vim  regex 

1
ความหมายของ \ b ใน. นิพจน์ปกติของสุทธิ [ปิด]
Microsoft มีการ์ดอ้างอิงด่วนที่ยอดเยี่ยมสำหรับ. Net Expressions แต่ดูเหมือนว่าจะแสดงรายการ\bเป็นทั้ง Backspace ที่ตรงกันและยังจับคู่ "บนขอบเขตคำว่า" มันคืออะไร สามารถ\bทำจริงๆทั้งสอง? คุณจะแม่นยำเกี่ยวกับสิ่งที่คุณหมายถึงอย่างไร

1
ค้นหาและแทนที่สตริงสุ่มแบบยาว n ตัวใน Notepad ++ โดยใช้ wildcards / regex
ฉันมีการถ่ายโอนข้อมูล SQL youtubehd:2nj6bykwกับการแสดงออกเช่น 2nj6bykwยังสามารถเป็นสตริงแบบสุ่มที่แตกต่างกัน มีความยาว 8 อักขระเสมอ ฉันต้องการที่จะเปลี่ยนมีเพียงyoutubehd:2nj6bykwyoutubehd ฉันจะทำสิ่งนี้โดยไม่แทนที่ด้วยตนเองทีละคนได้อย่างไร การถ่ายโอนข้อมูล SQL มีความยาวมากกว่า 230000 บรรทัดและมีสตริงเหล่านี้เกิดขึ้นประมาณ 200 รายการ ฉันคิดว่าฉันต้องการไวด์การ์ด แต่ฉันไม่รู้ว่ามันคืออะไรและฉันจะทำสิ่งนี้ได้อย่างไร

2
วิธีจับคู่ของเส้นรอบการแข่งขัน regex?
ฉันกำลังค้นหานิพจน์ regex เพื่อจับคู่สองบรรทัดเหนือเส้นที่ตรงกัน ตัวอย่างเช่น: ABCDEFGHADEFGH ABCDEFGHADEFGH ABCDEFGHDEFGHABCDEFGH ABCDEFGHDEFGHABCDEFGH ABCDEFGHABCDEFGHABCDEFGH ABCDEFGHABCDEFGHABCDEFGH XXXXXXXX ฉันต้องการจับ 2 บรรทัดเหนือ XXXXXXXX ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม หมายเหตุ: ด้วย Python โดยใช้ไลบรารี่อีกครั้ง
8 python  regex 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.