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

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

8
วิธีที่เร็วที่สุดในการวนซ้ำตัวอักษรทั้งหมดในสตริง
ใน Java สิ่งที่จะเป็นวิธีที่เร็วที่สุดในการวนซ้ำทุกตัวอักษรใน String สิ่งนี้: String str = "a really, really long string"; for (int i = 0, n = str.length(); i < n; i++) { char c = str.charAt(i); } หรือสิ่งนี้: char[] chars = str.toCharArray(); for (int i = 0, n = chars.length; i < n; i++) { char …

12
ค้นหาสตริงใน Enum และส่งคืน Enum
ฉันมีการแจงนับ: public enum MyColours { Red, Green, Blue, Yellow, Fuchsia, Aqua, Orange } และฉันมีสตริง: string colour = "Red"; ฉันต้องการที่จะกลับมา: MyColours.Red จาก: public MyColours GetColour(string colour) จนถึงตอนนี้ฉันมี: public MyColours GetColours(string colour) { string[] colours = Enum.GetNames(typeof(MyColours)); int[] values = Enum.GetValues(typeof(MyColours)); int i; for(int i = 0; i < colours.Length; i++) { …
163 c#  string  enumeration 

4
วิธีที่มีประสิทธิภาพมากที่สุดในการต่อสตริงใน JavaScript?
ใน JavaScript ฉันมีลูปที่มีการวนซ้ำหลายครั้งและในการวนซ้ำแต่ละครั้งฉันกำลังสร้างสตริงขนาดใหญ่ที่มี+=โอเปอเรเตอร์จำนวนมาก มีวิธีที่มีประสิทธิภาพมากกว่าในการสร้างสตริงหรือไม่? ฉันกำลังคิดเกี่ยวกับการสร้างอาร์เรย์แบบไดนามิกที่ฉันเพิ่มสตริงลงไปแล้วทำการเข้าร่วม ใครสามารถอธิบายและยกตัวอย่างวิธีที่เร็วที่สุดในการทำสิ่งนี้?

3
เหตุใดการแปลงจากค่าคงที่สตริงถึง 'char *' ใช้ได้ใน C แต่ไม่ถูกต้องใน C ++
มาตรฐาน C ++ 11 (ISO / IEC 14882: 2011) กล่าวใน§ C.1.1: char* p = "abc"; // valid in C, invalid in C++ สำหรับ C ++ มันก็โอเคในฐานะที่เป็นตัวชี้ไปที่ตัวอักษรของสตริงที่เป็นอันตรายเนื่องจากความพยายามใด ๆ ในการแก้ไขมันจะนำไปสู่ความผิดพลาด แต่ทำไมมันถึงใช้ได้ใน C? C ++ 11 ยังบอกด้วย: char* p = (char*)"abc"; // OK: cast added ซึ่งหมายความว่าหากมีการเพิ่มการร่ายลงในคำสั่งแรกมันจะใช้ได้ ทำไมการคัดเลือกนักแสดงทำให้คำสั่งที่สองใช้ได้ใน C ++ และมันแตกต่างจากคำสั่งแรกได้อย่างไร? มันยังคงเป็นอันตรายหรือไม่? ถ้าเป็นเช่นนั้นทำไมมาตรฐานถึงบอกว่าตกลง
163 c++  c  string  c++11  char 

19
จะตรวจสอบว่าสตริงมีข้อความจากอาร์เรย์ของสตริงย่อยใน JavaScript ได้อย่างไร?
ตรงไปตรงมาสวย ในจาวาสคริปต์ฉันต้องตรวจสอบว่าสตริงมีสตริงย่อยใด ๆ ที่อยู่ในอาร์เรย์หรือไม่

25
ฉันจะแทนที่สองสายในวิธีที่ไม่จบลงแทนที่สายอื่นได้อย่างไร
สมมติว่าฉันมีรหัสต่อไปนี้: String word1 = "bar"; String word2 = "foo"; String story = "Once upon a time, there was a foo and a bar." story = story.replace("foo", word1); story = story.replace("bar", word2); หลังจากรันโค้ดนี้แล้วค่าstoryจะเป็น"Once upon a time, there was a foo and a foo." ปัญหาที่คล้ายกันเกิดขึ้นหากฉันแทนที่พวกเขาในลำดับตรงกันข้าม: String word1 = "bar"; String word2 = …
162 java  string  replace 

8
ทับทิมใช้อักษรตัวพิมพ์ใหญ่ทุกคำแรก
ฉันต้องสร้างตัวอักษรแรกของทุกคำเป็นตัวพิมพ์ใหญ่และทำให้ตัวพิมพ์เล็กเหลือ ... manufacturer.MFA_BRAND.first.upcase เป็นการตั้งค่าตัวอักษรตัวพิมพ์ใหญ่ตัวแรกเท่านั้น แต่ฉันต้องการสิ่งนี้: ALFA ROMEO => Alfa Romeo AUDI => Audi BMW => Bmw ONETWO THREE FOUR => Onetwo Three Four
162 ruby  string 

12
วิธีแปลงสตริงไบต์เป็น int?
ฉันจะแปลงสตริงไบต์เป็น int ในไพ ธ อนได้อย่างไร พูดอย่างนี้: 'y\xcc\xa6\xbb' ฉันคิดวิธีที่ฉลาด / โง่ขึ้นมา: sum(ord(c) << (i * 8) for i, c in enumerate('y\xcc\xa6\xbb'[::-1])) ฉันรู้ว่าต้องมีบางสิ่งในตัวหรือในห้องสมุดมาตรฐานที่ทำสิ่งนี้ได้ง่ายกว่า ... ซึ่งแตกต่างจากการแปลงสตริงของตัวเลขฐานสิบหกซึ่งคุณสามารถใช้ int (xxx, 16) ได้ แต่ฉันต้องการแปลงสตริงของค่าไบต์จริงแทน UPDATE: ฉันชอบคำตอบของ James ที่ดีขึ้นเล็กน้อยเพราะไม่ต้องการนำเข้าโมดูลอื่น แต่วิธีของ Greg เร็วขึ้น: >>> from timeit import Timer >>> Timer('struct.unpack("<L", "y\xcc\xa6\xbb")[0]', 'import struct').timeit() 0.36242198944091797 >>> Timer("int('y\xcc\xa6\xbb'.encode('hex'), 16)").timeit() 1.1432669162750244 …
162 python  arrays  string 

7
คำเตือน: 'ตัวอักษร' ถูกคัดค้าน: โปรดใช้สตริงหรือซับสตริงโดยตรง
อักขระ - คุณสมบัติอินสแตนซ์ของ String ถูกคัดค้านด้วยXcode 9.1 มันเป็นประโยชน์มากที่จะได้รับจากการย่อย String โดยใช้charactersคุณสมบัติ แต่ตอนนี้มันได้รับการคัดค้านและ Xcode substringแนะนำให้ใช้ ฉันได้ลองตรวจสอบคำถามและคำแนะนำสำหรับนักพัฒนา Apple สำหรับแนวทางเดียวกัน แต่ไม่เห็นวิธีแก้ปัญหา / ทางเลือกตามที่แนะนำ นี่คือข้อความเตือน: 'characters' ไม่ได้รับการสนับสนุน: โปรดใช้สตริงหรือสตริงย่อย ฉันได้ดำเนินงานสตริงจำนวนมากดังนั้นจะดำเนินการ / charactersการจัดการใช้ทรัพย์สิน ใครมีความคิด / ข้อมูลเกี่ยวกับการอัปเดตนี้บ้าง


12
ฉันจะลบอักขระแรกของคอลัมน์ที่ระบุในตารางได้อย่างไร
ใน SQL ฉันจะลบ 4 อักขระแรกของค่าของคอลัมน์ที่ระบุในตารางได้อย่างไร ชื่อคอลัมน์และค่าตัวอย่างคือStudent Code ABCD123Stu1231ฉันต้องการลบ 4 ตัวอักษรแรกจากตารางของฉันสำหรับบันทึกทั้งหมด กรุณาแนะนำฉัน
162 sql  sql-server  string  tsql 

15
เทคนิคที่ดีกว่าสำหรับการตัดเลขศูนย์ชั้นนำใน SQL Server หรือไม่
ฉันใช้มันมาระยะหนึ่งแล้ว: SUBSTRING(str_col, PATINDEX('%[^0]%', str_col), LEN(str_col)) อย่างไรก็ตามเมื่อเร็ว ๆ นี้ฉันพบปัญหาเกี่ยวกับคอลัมน์ที่มีอักขระ "0" ทั้งหมดเช่น '00000000' เนื่องจากไม่พบอักขระที่ไม่ใช่ "0" ให้ตรงกัน เทคนิคทางเลือกที่ฉันเคยเห็นคือการใช้TRIM: REPLACE(LTRIM(REPLACE(str_col, '0', ' ')), ' ', '0') ปัญหานี้มีปัญหาหากมีช่องว่างในตัวเพราะจะเปลี่ยนเป็น "0" เมื่อช่องว่างนั้นถูกเปลี่ยนกลับเป็น "0" ฉันพยายามหลีกเลี่ยงสเกลาร์ UDF ฉันพบปัญหาเกี่ยวกับประสิทธิภาพการทำงานกับ UDF จำนวนมากใน SQL Server 2005

9
วิธีการลบอักขระตัวแรกและตัวสุดท้ายของสตริง
ฉันสงสัยว่าจะลบอักขระตัวแรกและตัวสุดท้ายของสตริงใน Javascript ได้อย่างไร URL ของฉันคือการแสดงและฉันต้องการเพียงแค่/installers/installers บางครั้งก็จะเป็นและฉันเพียงแค่ต้อง/installers/services/installers/services /ดังนั้นผมจึงไม่สามารถเพียงแค่ตัดทับ
161 javascript  string 


15
ผ่าน String โดยการอ้างอิงใน Java?
ฉันคุ้นเคยกับการทำสิ่งต่อไปนี้ในC: void main() { String zText = ""; fillString(zText); printf(zText); } void fillString(String zText) { zText += "foo"; } และผลลัพธ์คือ: foo อย่างไรก็ตามใน Java สิ่งนี้ดูเหมือนจะไม่ทำงาน ผมถือว่าเพราะStringวัตถุถูกคัดลอกแทนการส่งผ่านโดยอ้างอิง ฉันคิดว่า Strings เป็นวัตถุซึ่งมักถูกส่งผ่านโดยการอ้างอิง เกิดขึ้นที่นี่คืออะไร?

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