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

สตริงเป็นลำดับที่ จำกัด ของสัญลักษณ์ที่ใช้กันทั่วไปสำหรับข้อความแม้ว่าบางครั้งสำหรับข้อมูลโดยพลการ


5
Linux ค้นหาชื่อไฟล์ด้วยสตริงที่กำหนด
ฉันใช้ Ubuntu และฉันต้องการค้นหาไฟล์ทั้งหมดในไดเร็กทอรีปัจจุบันและไดเร็กทอรีย่อยที่ชื่อมีสตริง "John" ฉันรู้ว่าgrepสามารถจับคู่เนื้อหาในไฟล์ได้ แต่ฉันไม่รู้ว่าจะใช้กับชื่อไฟล์อย่างไร ความช่วยเหลือใด ๆ จะได้รับการชื่นชม
107 linux  string  find 

5
วิธีลบอักขระ n ตัวสุดท้ายออกจากทุกองค์ประกอบในเวกเตอร์ R
ฉันใหม่มากสำหรับ R และฉันไม่พบตัวอย่างง่ายๆทางออนไลน์เกี่ยวกับวิธีการลบอักขระ n ตัวสุดท้ายออกจากทุกองค์ประกอบของเวกเตอร์ (อาร์เรย์?) ฉันมาจากพื้นหลัง Java ดังนั้นสิ่งที่ฉันต้องการจะทำคือทำซ้ำทุกองค์ประกอบa$dataและลบอักขระ 3 ตัวสุดท้ายออกจากทุกองค์ประกอบ คุณจะไปได้อย่างไร?
107 r  string 

23
รับสตริงระหว่างสองสตริงในสตริง
ฉันมีสตริงเช่น: "super exemple of string key : text I want to keep - end of my string" ฉันต้องการเพียงแค่ให้สตริงซึ่งอยู่ระหว่างและ"key : " " - "ฉันจะทำเช่นนั้นได้อย่างไร? ฉันต้องใช้ Regex หรือฉันสามารถทำได้ด้วยวิธีอื่น?
107 c#  regex  string 



25
ความหลากหลายในข้อความของผู้ใช้
หลายครั้งเมื่อสร้างข้อความเพื่อแสดงต่อผู้ใช้ข้อความนั้นจะมีบางสิ่งที่ฉันต้องการแจ้งให้ลูกค้าทราบ ฉันจะยกตัวอย่าง: ลูกค้าได้เลือกรายการตั้งแต่ 1 ขึ้นไปและได้คลิกลบ ตอนนี้ฉันต้องการส่งข้อความยืนยันให้กับลูกค้าและฉันต้องการพูดถึงจำนวนรายการที่เขาเลือกเพื่อลดโอกาสที่เขาจะทำผิดพลาดโดยการเลือกรายการจำนวนมากและคลิกลบเมื่อเขาต้องการลบเพียงรายการเดียว พวกเขา วิธีหนึ่งคือทำให้ข้อความทั่วไปเป็นดังนี้: int noofitemsselected = SomeFunction(); string message = "You have selected " + noofitemsselected + " item(s). Are you sure you want to delete it/them?"; "ปัญหา" ที่นี่คือกรณีที่noofitemselected1 และเราจะต้องเขียนรายการและมันแทนรายการและพวกเขา ทางออกปกติของฉันจะเป็นแบบนี้ int noofitemsselected = SomeFunction(); string message = "You have selected " + noofitemsselected + …

3
ฉันจะดำเนินการ "เริ่มต้นด้วย" ที่คำนึงถึงวัฒนธรรมจากตรงกลางของสตริงได้อย่างไร
ฉันมีข้อกำหนดที่ค่อนข้างคลุมเครือ แต่รู้สึกว่าควรเป็นไปได้โดยใช้ BCL สำหรับบริบทผมแยกสตริงวันที่ / เวลาในNoda เวลา ฉันรักษาเคอร์เซอร์แบบลอจิคัลสำหรับตำแหน่งของฉันภายในสตริงอินพุต ดังนั้นในขณะที่สตริงที่สมบูรณ์อาจเป็น "3 มกราคม 2013" เคอร์เซอร์แบบลอจิคัลอาจอยู่ที่ "J" ตอนนี้ฉันต้องแยกวิเคราะห์ชื่อเดือนโดยเปรียบเทียบกับชื่อเดือนที่รู้จักทั้งหมดสำหรับวัฒนธรรม: วัฒนธรรมที่อ่อนไหว ตัวพิมพ์เล็กและใหญ่ จากจุดของเคอร์เซอร์ (ไม่ใช่ในภายหลังฉันต้องการดูว่าเคอร์เซอร์กำลัง "ดู" ชื่อเดือนของผู้สมัครหรือไม่) อย่างรวดเร็ว ... และฉันต้องรู้ว่าหลังจากนั้นใช้อักขระกี่ตัว รหัสปัจจุบันCompareInfo.Compareการทำเช่นนี้โดยทั่วไปจะทำงานโดยใช้ มันเป็นแบบนี้อย่างมีประสิทธิภาพ (สำหรับส่วนที่ตรงกัน - มีโค้ดมากกว่าของจริง แต่ไม่เกี่ยวข้องกับการจับคู่): internal bool MatchCaseInsensitive(string candidate, CompareInfo compareInfo) { return compareInfo.Compare(text, position, candidate.Length, candidate, 0, candidate.Length, CompareOptions.IgnoreCase) == 0; } อย่างไรก็ตามขึ้นอยู่กับผู้สมัครและภูมิภาคที่เราเปรียบเทียบว่ามีความยาวเท่ากัน ดีเกือบตลอดเวลา …
106 .net  string  unicode 


4
ฉันจะวนซ้ำผ่านจุดรหัสยูนิโคดของสตริง Java ได้อย่างไร
ดังนั้นฉันจึงรู้เกี่ยวกับString#codePointAt(int)แต่มันถูกสร้างดัชนีโดยการcharชดเชยไม่ใช่โดยการชดเชยจุดรหัส ฉันกำลังคิดจะลองทำสิ่งต่างๆเช่น: ใช้String#charAt(int)เพื่อรับcharดัชนี ทดสอบว่าcharอยู่ในช่วงตัวแทนสูงหรือไม่ ถ้าเป็นเช่นนั้นให้ใช้String#codePointAt(int)เพื่อรับจุดรหัสและเพิ่มดัชนีขึ้น 2 ถ้าไม่ใช้charค่าที่กำหนดเป็นจุดรหัสและเพิ่มดัชนีขึ้น 1 แต่ความกังวลของฉันคือ ฉันไม่แน่ใจว่าจุดรหัสที่อยู่ในช่วงตัวแทนระดับสูงจะถูกจัดเก็บเป็นสองcharค่าหรือค่าเดียว นี่ดูเหมือนเป็นวิธีที่แพงมากในการวนซ้ำผ่านตัวละคร ใครบางคนต้องมีสิ่งที่ดีกว่า
106 java  string  unicode 

3
เกิดอะไรขึ้นกับ Groovy multi-line String?
สคริปต์ Groovy ทำให้เกิดข้อผิดพลาด: def a = "test" + "test" + "test" ข้อผิดพลาด: No signature of method: java.lang.String.positive() is applicable for argument types: () values: [] แม้ว่าสคริปต์นี้จะทำงานได้ดี: def a = new String( "test" + "test" + "test" ) ทำไม?
106 string  groovy  multiline 


2
กลไกของการเพิ่มประสิทธิภาพสตริงสั้นใน libc ++ คืออะไร?
คำตอบนี้ให้ภาพรวมระดับสูงที่ดีของการเพิ่มประสิทธิภาพสตริงสั้น (SSO) อย่างไรก็ตามฉันต้องการทราบรายละเอียดเพิ่มเติมว่ามันทำงานอย่างไรในทางปฏิบัติโดยเฉพาะในการใช้งาน libc ++: สตริงต้องสั้นแค่ไหนจึงจะมีคุณสมบัติเป็น SSO สิ่งนี้ขึ้นอยู่กับสถาปัตยกรรมเป้าหมายหรือไม่? การใช้งานแยกความแตกต่างระหว่างสตริงแบบสั้นและแบบยาวเมื่อเข้าถึงข้อมูลสตริงอย่างไร มันง่ายเหมือนm_size <= 16หรือเป็นแฟล็กที่เป็นส่วนหนึ่งของตัวแปรสมาชิกอื่น ๆ หรือไม่? (ฉันคิดว่าm_sizeหรือบางส่วนอาจใช้ในการจัดเก็บข้อมูลสตริง) ผมถามคำถามนี้มาโดยเฉพาะสำหรับ libc ++ เพราะฉันรู้ว่ามันใช้ SSO นี้ถูกกล่าวถึงแม้ในlibc ++ หน้าแรก นี่คือข้อสังเกตบางประการหลังจากดูที่มา : libc ++ สามารถคอมไพล์โดยมีเลย์เอาต์หน่วยความจำที่แตกต่างกันเล็กน้อยสำหรับคลาสสตริงซึ่งถูกควบคุมโดย_LIBCPP_ALTERNATE_STRING_LAYOUTแฟล็ก เค้าโครงทั้งสองยังแยกความแตกต่างระหว่างเครื่องจักรเล็ก ๆ น้อย ๆ และเครื่องใหญ่เอนด์เซียนซึ่งทำให้เรามีรูปแบบต่างๆทั้งหมด 4 แบบ ฉันจะถือว่าเค้าโครง "ปกติ" และ endian น้อยในสิ่งต่อไปนี้ สมมติว่าต่อไปsize_typeคือ 4 ไบต์และนั่นvalue_typeคือ 1 ไบต์นี่คือลักษณะของสตริง 4 ไบต์แรกในหน่วยความจำ: // short string: …

6
การรับและลบอักขระตัวแรกของสตริง
ฉันต้องการเดินแบบ 2 มิติโดยใช้สตริงของอักขระโดยกำหนดค่าที่แตกต่างกันให้กับตัวละครแต่ละตัว ฉันวางแผนที่จะ 'ป๊อป' อักขระตัวแรกของสตริงใช้มันและทำซ้ำสำหรับส่วนที่เหลือของสตริง ฉันจะบรรลุสิ่งนี้ได้อย่างไร? x <- 'hello stackoverflow' ฉันต้องการที่จะทำสิ่งนี้: a <- x.pop[1] print(a) 'h' print(x) 'ello stackoverflow'
106 string  r 

14
จะค้นหาดัชนีของการเกิดขึ้นทั้งหมดของสตริงหนึ่งในอีกสตริงใน JavaScript ได้อย่างไร
ฉันพยายามหาตำแหน่งของสตริงที่เกิดขึ้นทั้งหมดในสตริงอื่นโดยไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ ตัวอย่างเช่นกำหนดสตริง: ฉันเรียนรู้การเล่นอูคูเลเล่ในเลบานอน และสตริงการค้นหาleฉันต้องการรับอาร์เรย์: [2, 25, 27, 33] สตริงทั้งสองจะเป็นตัวแปรนั่นคือฉันไม่สามารถฮาร์ดโค้ดค่าของมันได้ ฉันคิดว่านี่เป็นงานง่ายสำหรับนิพจน์ทั่วไป แต่หลังจากพยายามดิ้นรนสักพักเพื่อหาสิ่งที่ใช้ได้ผลฉันก็ไม่มีโชค ฉันพบตัวอย่างวิธีการใช้งานนี้ให้สำเร็จ.indexOf()แต่ต้องมีวิธีที่รัดกุมกว่านี้ใช่ไหม

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