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

นิพจน์ทั่วไปจัดเตรียมภาษาที่ประกาศเพื่อจับคู่รูปแบบภายในสตริง โดยทั่วไปจะใช้สำหรับการตรวจสอบความถูกต้องสตริงการแยกวิเคราะห์และการแปลง เนื่องจากนิพจน์ทั่วไปนั้นไม่ได้มาตรฐานอย่างสมบูรณ์คำถามทั้งหมดที่มีแท็กนี้จึงควรมีแท็กที่ระบุภาษาการเขียนโปรแกรมหรือเครื่องมือที่เกี่ยวข้อง หมายเหตุ: การขอ HTML, JSON และอื่น ๆ regex มีแนวโน้มที่จะพบกับปฏิกิริยาเชิงลบ หากมีการแยกวิเคราะห์มันใช้ที่แทน

19
ลบบรรทัดใหม่ออกจากสตริงและแทนที่ด้วยหนึ่งช่องว่าง
$string = " put returns between paragraphs for linebreak add 2 spaces at end "; ต้องการลบบรรทัดใหม่ทั้งหมดออกจากสตริง ฉันมี regex นี้มันสามารถจับพวกเขาทั้งหมดปัญหาคือฉันไม่รู้ด้วยฟังก์ชั่นที่ฉันควรใช้ /\r\n|\r|\n/ $string ควรกลายเป็น: $string = "put returns between paragraphs for linebreak add 2 spaces at end ";
291 php  regex  string 

16
การใช้รูปแบบสตริงเพื่อแสดงทศนิยมได้ถึง 2 ตำแหน่งหรือจำนวนเต็มอย่างง่าย
ฉันมีฟิลด์ราคาที่จะแสดงซึ่งบางครั้งอาจเป็น 100 หรือ 100.99 หรือ 100.9 สิ่งที่ฉันต้องการคือการแสดงราคาเป็นทศนิยม 2 ตำแหน่งก็ต่อเมื่อมีการป้อนทศนิยมสำหรับราคานั้นเช่นถ้าเป็น 100 มันควรเท่านั้น แสดง 100 ไม่ใช่ 100.00 และถ้าราคาเท่ากับ 100.2 ก็ควรแสดง 100.20 เหมือนกันสำหรับ 100.22 ควรเหมือนกัน ฉัน googled และเจอตัวอย่างบางอย่าง แต่พวกเขาไม่ตรงกับสิ่งที่ฉันต้องการ: // just two decimal places String.Format("{0:0.00}", 123.4567); // "123.46" String.Format("{0:0.00}", 123.4); // "123.40" String.Format("{0:0.00}", 123.0); // "123.00"

20
การแสดงออกปกติเพื่อให้ตรงกับวงเล็บที่สมดุล
ฉันต้องการนิพจน์ทั่วไปเพื่อเลือกข้อความทั้งหมดระหว่างวงเล็บสองด้านนอก ตัวอย่าง: some text(text here(possible text)text(possible text(more text)))end text ผลลัพธ์: (text here(possible text)text(possible text(more text)))
290 regex 

3
regex.test VS string.match เพื่อทราบว่าสตริงตรงกับนิพจน์ทั่วไปหรือไม่
หลายครั้งที่ฉันใช้matchฟังก์ชันสตริงเพื่อทราบว่าสตริงตรงกับนิพจน์ทั่วไปหรือไม่ if(str.match(/{regex}/)) มีความแตกต่างระหว่างสิ่งนี้หรือไม่: if (/{regex}/.test(str)) พวกเขาดูเหมือนจะให้ผลลัพธ์เดียวกัน

9
ทดสอบว่าอักขระอยู่ในสตริงหรือไม่
ฉันพยายามที่จะตรวจสอบว่าสตริงเป็นส่วนย่อยของสตริงอื่น ตัวอย่างเช่น: chars <- "test" value <- "es" ฉันต้องการส่งคืน TRUE หาก "value" ปรากฏเป็นส่วนหนึ่งของสตริง "chars" ในสถานการณ์ต่อไปนี้ฉันต้องการกลับเท็จ: chars <- "test" value <- "et"
279 r  regex  string  r-faq 

13
นิพจน์ปกติ - จับคู่สิ่งใด ๆ
ฉันจะทำให้การแสดงออกเพื่อให้ตรงกับอะไรอย่างแน่นอน (รวมถึงช่องว่าง)? ตัวอย่าง: Regex: ฉันซื้อ _____ แกะ การแข่งขัน:ฉันซื้อแกะ ฉันซื้อแกะ ฉันซื้อแกะห้าตัว ฉันพยายามใช้(.*)แต่ดูเหมือนจะไม่ทำงาน อัปเดต: ฉันได้มาเพื่อทำงานดูเหมือนว่าปัญหาไม่ได้เกิดจากการแสดงออกปกติมันเป็นเพียงแค่ตัวละคร (.) ที่กำลังหลบหนี
278 regex 

8
จะส่งออกเฉพาะกลุ่มที่ถูกจับได้อย่างไร
มีวิธีบอกsedให้ส่งออกเฉพาะกลุ่มที่จับหรือไม่ ตัวอย่างเช่นกำหนดอินพุต: This is a sample 123 text and some 987 numbers และรูปแบบ: /([\d]+)/ ฉันจะได้รับเพียง 123 และ 987 เอาท์พุทในวิธีการจัดรูปแบบโดยอ้างอิงกลับ?
277 regex  sed 

7
ทำไม RegExp ที่มีการตั้งค่าสถานะส่วนกลางให้ผลลัพธ์ที่ไม่ถูกต้อง
ปัญหาของนิพจน์ทั่วไปนี้คืออะไรเมื่อฉันใช้ค่าสถานะโกลบอลและค่าสถานะแบบตายเล็กตัวพิมพ์เล็ก ข้อความค้นหาเป็นข้อมูลที่ผู้ใช้สร้างขึ้น ผลลัพธ์ควรเป็น [จริงจริง] var query = 'Foo B'; var re = new RegExp(query, 'gi'); var result = []; result.push(re.test('Foo Bar')); result.push(re.test('Foo Bar')); // result will be [true, false] var reg = /^a$/g; for(i = 0; i++ < 10;) console.log(reg.test("a")); เรียกใช้ข้อมูลโค้ดซ่อนผลลัพธ์ขยายตัวอย่างข้อมูล
277 javascript  regex 


6
วิธีการใช้ JavaScript regex มากกว่าหลายบรรทัด?
var ss= "<pre>aaaa\nbbb\nccc</pre>ddd"; var arr= ss.match( /<pre.*?<\/pre>/gm ); alert(arr); // null ฉันต้องการให้บล็อก PRE ถูกหยิบขึ้นมาแม้ว่ามันจะยาวเกินอักขระขึ้นบรรทัดใหม่ ฉันคิดว่าธง 'm' ทำเช่นนั้น ไม่. พบคำตอบได้ที่นี่ก่อนโพสต์ เมื่อฉันคิดว่าฉันรู้จัก JavaScript (อ่านหนังสือสามเล่มชั่วโมงทำงาน) และไม่มีวิธีแก้ปัญหาที่มีอยู่ใน SO ฉันจะกล้าโพสต์ต่อไป โยนก้อนหินที่นี่ ดังนั้นทางออกคือ: var ss= "<pre>aaaa\nbbb\nccc</pre>ddd"; var arr= ss.match( /<pre[\s\S]*?<\/pre>/gm ); alert(arr); // <pre>...</pre> :) ไม่มีใครมีวิธีที่เป็นความลับน้อยลงหรือไม่ แก้ไข: นี้เป็นที่ซ้ำกัน แต่เพราะมันยากที่จะหากว่าผมผมไม่เอา มันเสนอ[^]เป็น "จุดหลายจุด" สิ่งที่ฉันยังไม่เข้าใจคือสาเหตุที่[.\n]ไม่ทำงาน เดานี่เป็นส่วนที่น่าเศร้าของ JavaScript ..
275 javascript  regex 

2
Regex - ไม่มีอักขระบางตัว
ฉันต้องการ regex เพื่อให้ตรงกับที่ใดก็ได้ในประโยคที่ไม่มี <หรือ> หาก <หรือ> อยู่ในสายอักขระนั้นจะต้องส่งกลับเท็จ ฉันประสบความสำเร็จเพียงบางส่วนด้วยสิ่งนี้ แต่ถ้า <> ของฉันอยู่ที่จุดเริ่มต้นหรือจุดสิ้นสุด: (?!<|>).*$ ฉันใช้. Net หากนั่นสร้างความแตกต่าง ขอบคุณสำหรับความช่วยเหลือ

29
Java วิธีการแทนที่ 2 หรือมากกว่าช่องว่างด้วยพื้นที่เดียวในสตริงและลบช่องว่างนำหน้าและต่อท้าย
กำลังมองหาวิธีที่ง่ายและรวดเร็วใน Java เพื่อเปลี่ยนสตริงนี้ " hello there " สำหรับสิ่งที่มีลักษณะเช่นนี้ "hello there" โดยที่ฉันจะแทนที่ช่องว่างหลายช่องทั้งหมดด้วยช่องว่างเดียวยกเว้นว่าฉันต้องการให้มีช่องว่างตั้งแต่หนึ่งต้นขึ้นไปที่จุดเริ่มต้นของสตริงด้วย บางสิ่งเช่นนี้ทำให้ฉันมีบางส่วนที่นั่น String mytext = " hello there "; mytext = mytext.replaceAll("( )+", " "); แต่ไม่มาก
271 java  regex  string  replace 

17
นิพจน์ทั่วไปอย่างง่ายสำหรับทศนิยมที่มีความแม่นยำ 2
การแสดงออกปกติสำหรับทศนิยมที่มีความแม่นยำ 2 คืออะไร? ตัวอย่างที่ถูกต้อง : 123.12 2 56754 92929292929292.12 0.21 3.1 ตัวอย่างไม่ถูกต้อง: 12.1232 2.23332 e666.76 จุดทศนิยมอาจเป็นทางเลือกและอาจรวมถึงจำนวนเต็ม
271 regex 

16
สตริงการแยกเท่านั้นในอินสแตนซ์แรกของตัวละครที่ระบุ
ในรหัสของฉันฉันแบ่งสตริงตาม_และคว้ารายการที่สองในอาร์เรย์ var element = $(this).attr('class'); var field = element.split('_')[1]; ใช้เวลาและให้ฉันด้วยgood_luck luckใช้งานได้ดี! good_luck_buddyแต่ตอนนี้ผมมีชั้นเรียนที่มีลักษณะเหมือน ฉันจะทำให้ javascript ของฉันเพิกเฉยต่อวินาที_และให้ฉันได้luck_buddyอย่างไร ฉันพบสิ่งนี้var field = element.split(new char [] {'_'}, 2);ในคำตอบของ ac # stackoverflow แต่ไม่ได้ผล ฉันลองมันที่ jsFiddle ...
271 javascript  jquery  regex 

12
จะทดสอบ UUID / GUID ที่ถูกต้องได้อย่างไร
จะตรวจสอบว่าตัวแปรมีตัวระบุ UUID / GUID ที่ถูกต้องได้อย่างไร ขณะนี้ฉันสนใจเฉพาะการตรวจสอบประเภท 1 และ 4 แต่ไม่ควร จำกัด เฉพาะคำตอบของคุณ

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