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

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


3
ตัวดำเนินการรวมที่เทียบเท่ากับเวกเตอร์ของสตริงคืออะไร?
ฉันไม่พบค่าเทียบเท่า Rust สำหรับโอเปอเรเตอร์ "join" บนเวกเตอร์ของ String s ฉันมีVec<String>และฉันต้องการเข้าร่วมเป็นหนึ่งเดียวString: let string_list = vec!["Foo".to_string(),"Bar".to_string()]; let joined = something::join(string_list,"-"); assert_eq!("Foo-Bar", joined); ที่เกี่ยวข้อง: วิธีการพิมพ์ตัววนซ้ำที่คั่นด้วยช่องว่างใน Rust คืออะไร?
120 string  rust 

13
การแทนที่อินสแตนซ์ของอักขระในสตริง
รหัสง่ายๆที่พยายามแทนที่อัฒภาค (ที่ตำแหน่งที่ระบุไว้) ด้วยเครื่องหมายโคลอนใช้ไม่ได้: for i in range(0,len(line)): if (line[i]==";" and i in rightindexarray): line[i]=":" มันให้ข้อผิดพลาด line[i]=":" TypeError: 'str' object does not support item assignment ฉันจะแก้ไขสิ่งนี้เพื่อแทนที่อัฒภาคด้วยเครื่องหมายจุดคู่ได้อย่างไร การใช้การแทนที่ไม่ได้ผลเนื่องจากฟังก์ชันนั้นไม่มีดัชนี - อาจมีอัฒภาคบางตัวที่ฉันไม่ต้องการแทนที่ ตัวอย่าง ในสตริงฉันอาจมีเครื่องหมายอัฒภาคจำนวนเท่าใดก็ได้เช่น "Hei der !; Hello there; !;" ฉันรู้ว่าฉันต้องการแทนที่อันไหน (ฉันมีดัชนีอยู่ในสตริง) การใช้การแทนที่ไม่ได้ผลเนื่องจากฉันไม่สามารถใช้ดัชนีกับมันได้
120 python  string 


6
ObjectiveC Parse Integer จาก String
ฉันกำลังพยายามดึงสตริง (ซึ่งมีจำนวนเต็ม) จากอาร์เรย์แล้วใช้เป็น int ในฟังก์ชัน ฉันกำลังพยายามแปลงเป็น int โดยใช้ intValue นี่คือรหัสที่ฉันพยายาม NSArray *_returnedArguments = [serverOutput componentsSeparatedByString:@":"]; [_appDelegate loggedIn:usernameField.text:passwordField.text:(int)[[_returnedArguments objectAtIndex:2] intValue]]; ฉันได้รับข้อผิดพลาดนี้: การส่งอาร์กิวเมนต์ 3 ของ 'loggedIn :::' ทำให้ตัวชี้จากจำนวนเต็มโดยไม่ต้องใช้ cast มีอะไรผิดปกติ

6
วนซ้ำบนบรรทัดของสตริง
ฉันมีสตริงหลายบรรทัดที่กำหนดไว้ดังนี้: foo = """ this is a multi-line string. """ สตริงนี้เราใช้เป็นอินพุตทดสอบสำหรับตัวแยกวิเคราะห์ที่ฉันกำลังเขียน parser-function รับ a file-object เป็นอินพุตและวนซ้ำทับมัน นอกจากนี้ยังเรียกnext()วิธีการนี้โดยตรงเพื่อข้ามบรรทัดดังนั้นฉันจึงต้องการตัววนซ้ำเป็นอินพุตไม่ใช่ทำซ้ำได้ ฉันต้องการตัววนซ้ำที่วนซ้ำในแต่ละบรรทัดของสตริงนั้นเช่น - fileวัตถุจะอยู่เหนือบรรทัดของไฟล์ข้อความ แน่นอนฉันสามารถทำได้เช่นนี้: lineiterator = iter(foo.splitlines()) มีวิธีที่ตรงกว่านี้หรือไม่? ในสถานการณ์สมมตินี้สตริงจะต้องข้ามผ่านหนึ่งครั้งสำหรับการแยกและจากนั้นอีกครั้งโดยตัวแยกวิเคราะห์ มันไม่สำคัญในกรณีทดสอบของฉันเนื่องจากสตริงนั้นสั้นมากฉันแค่ถามด้วยความอยากรู้ Python มีบิวท์อินที่มีประโยชน์และมีประสิทธิภาพมากมายสำหรับสิ่งเหล่านี้ แต่ฉันไม่พบสิ่งใดที่เหมาะสมกับความต้องการนี้
119 python  string  iterator 

6
ค่า int ต่ำกว่า 10 แปลงเป็นสตริงตัวเลขสองหลัก
string strI; for (int i = 1; i < 100; i++) strI = i.ToString(); ในที่นี่ถ้าi = 1แล้วToStringอัตราผลตอบแทน"1" แต่อยากได้ "01"หรือ"001" ดูเหมือนง่าย แต่มีเพียงบทความเกี่ยวกับ datetime.ToString("yyyy-MM-dd")`
119 c#  string 

6
ฉันจะเขียนข้อมูลในรูปแบบ CSV เป็นสตริง (ไม่ใช่ไฟล์) ได้อย่างไร
ฉันต้องการแคสต์ข้อมูลเช่นเดียว[1,2,'a','He said "what do you mean?"']กับสตริงที่มีรูปแบบ CSV โดยปกติจะใช้csv.writer()สำหรับสิ่งนี้เพราะมันจัดการกับกรณี edge ที่บ้าคลั่งทั้งหมด (การหลบหนีด้วยลูกน้ำ, เครื่องหมายอัญประกาศ, ภาษาถิ่น CSV ฯลฯ ) สิ่งที่จับได้คือcsv.writer()คาดว่าจะส่งออกไปยังอ็อบเจ็กต์ไฟล์ไม่ใช่สตริง โซลูชันปัจจุบันของฉันคือฟังก์ชันที่ค่อนข้างแฮ็ค: def CSV_String_Writeline(data): class Dummy_Writer: def write(self,instring): self.outstring = instring.strip("\r\n") dw = Dummy_Writer() csv_w = csv.writer( dw ) csv_w.writerow(data) return dw.outstring ใครสามารถให้โซลูชันที่หรูหรากว่านี้ที่ยังคงจัดการกับขอบเคสได้ดี แก้ไข: นี่คือวิธีที่ฉันทำ: def csv2string(data): si = StringIO.StringIO() cw = csv.writer(si) cw.writerow(data) …
119 python  string  csv 

3
จะทดสอบได้อย่างไรว่าสตริงมีสตริงย่อยในรายการเป็นแพนด้าหรือไม่?
มีฟังก์ชันใดบ้างที่จะเทียบเท่ากับการรวมกันของdf.isin()และdf[col].str.contains()? ตัวอย่างเช่นพูดว่าฉันมีซีรีส์ s = pd.Series(['cat','hat','dog','fog','pet'])และฉันต้องการค้นหาสถานที่ทั้งหมดที่sมีทั้งหมด['og', 'at']ฉันอยากได้ทุกอย่างยกเว้น 'สัตว์เลี้ยง' ฉันมีวิธีแก้ปัญหา แต่มันค่อนข้างไม่ดี: searchfor = ['og', 'at'] found = [s.str.contains(x) for x in searchfor] result = pd.DataFrame[found] result.any() มีวิธีที่ดีกว่านี้หรือไม่?

5
เพิ่มคำนำหน้าสตริงให้กับแต่ละค่าในคอลัมน์สตริงโดยใช้ Pandas
ฉันต้องการต่อท้ายสตริงที่จุดเริ่มต้นของแต่ละค่าในคอลัมน์ดังกล่าวของดาต้าเฟรมแพนด้า (อย่างหรูหรา) ฉันได้หาวิธีการประเภทนี้แล้วและฉันกำลังใช้: df.ix[(df['col'] != False), 'col'] = 'str'+df[(df['col'] != False), 'col'] นี่ดูเหมือนเป็นสิ่งที่ไม่ดีอย่างหนึ่งที่ต้องทำ - คุณรู้วิธีอื่นหรือไม่ (ซึ่งอาจเพิ่มอักขระในแถวที่คอลัมน์นั้นเป็น 0 หรือ NaN) ในกรณีที่ยังไม่ชัดเจนฉันต้องการเปลี่ยน: col 1 a 2 0 เข้าสู่: col 1 stra 2 str0

3
ลบอักขระพิเศษทั้งหมดออกจากสตริงใน R?
จะลบอักขระพิเศษทั้งหมดออกจากสตริงใน R และแทนที่ด้วยช่องว่างได้อย่างไร อักขระพิเศษที่จะลบ ได้แก่ : ~!@#$%^&*(){}_+:"<>?,./;'[]-= ฉันได้ลองregexใช้[:punct:]รูปแบบแล้ว แต่ลบเฉพาะเครื่องหมายวรรคตอน คำถามที่ 2: และวิธีลบอักขระจากภาษาต่างประเทศเช่น: â í ü Â á ą ę ś ć? คำตอบ: ใช้[^[:alnum:]]ลบ~!@#$%^&*(){}_+:"<>?,./;'[]-=และใช้[^a-zA-Z0-9]เพื่อลบนอกจากนี้â í ü Â á ą ę ś ćในregexหรือregexprฟังก์ชัน
119 regex  string  r  character 




21
CompareTo () เทียบกับเท่ากับ ()
เมื่อทดสอบความเท่าเทียมกันของStringJava ฉันใช้มาตลอดequals()เพราะสำหรับฉันแล้วนี่เป็นวิธีที่เป็นธรรมชาติที่สุดสำหรับฉัน ท้ายที่สุดชื่อของมันก็บอกอยู่แล้วว่าตั้งใจจะทำอะไร แต่เพื่อนร่วมงานของผมเพิ่งบอกฉันได้รับการสอนที่จะใช้แทนcompareTo() == 0 equals()สิ่งนี้ให้ความรู้สึกผิดธรรมชาติ (ตามที่compareTo()ตั้งใจไว้เพื่อให้มีการสั่งซื้อและไม่เปรียบเทียบเพื่อความเท่าเทียมกัน) และถึงแม้จะค่อนข้างอันตราย (เพราะcompareTo() == 0ไม่จำเป็นต้องหมายความถึงความเท่าเทียมกันในทุกกรณีแม้ว่าฉันจะรู้ว่ามันทำStringเพื่อฉันก็ตาม) เขาไม่ทราบว่าทำไมเขาถูกสอนให้ใช้compareTo()แทนequals()สำหรับString's, และฉันจะยังไม่พบเหตุผลใด ๆ นี่เป็นเรื่องของรสนิยมส่วนตัวจริงๆหรือมีเหตุผลที่แท้จริงสำหรับวิธีใดวิธีหนึ่ง?
118 java  string  equals  compareto 

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