ne zaman kullanılması gerektiğini Geçenlerde regex kullanarak henüz bunu anlayabilmem kodumda düzgün bir şekilde. Ayrılmış bir sekme str
örneği verildiğinde, str.split("\t")
kullanıyordum. Şimdi bunun yanlış olduğunu ve sekmeleri eşleştirmek için str.split("\\t")
kullanmam gerektiğini anlıyorum. Başka bir şey için düzenli ifade desenleri arıyordu olarakanlama regex: bölünmüş ("\ t") vs bölünmüş (" t") - zaman ikisinin de çalışması yapmak ve onlar
Ancak, saf tesadüfen bu gerçeği tökezlemek olur. Görüyorsunuz, hatalı kod split("\t")
benim durumumda gayet iyi çalışıyordu ve şimdi sekme karakterini eşleştirmek için bir regex bildirmek için yanlış bir yol olup olmadığını neden işe yaradığı konusunda kafam karıştı. Bu nedenle, aslında regex'in Java'da nasıl işlendiğini anlamak uğruna, sadece Eclipse'e kod kopyalamak yerine ve neden işe yaradığını anlamak yerine ...
Benzer bir şekilde bir parçaya geldim. Yalnızca sekmeyle ayrılmış değil, aynı zamanda virgülle ayrılmış metin. Daha açık bir ifadeyle, ayrıştırdığım sekmeyle ayrılmış listeler bazen "bileşik" gibi görünen öğeler içerir: item1,item2,item3
ve bunları basitlik uğruna ayrı öğeler olarak ayırmak istiyorum. Bu durumda uygun regex ifadesi olmalıdır: line.split("[\\t,]")
, ya da ben de burada yanılıyorum? peşin
sayesinde
Yani listesidir sekmesi ve virgül hem ayrılmış ama bazen sekmeleri ayırıcıları değil mi? – Gumbo
iyi ... hayır. Sekme ile ayrılmış tanımlayıcıların listesidir, ancak öğeler arasında virgülle ayrılmış bazı çiftler/üçüzler vardır. Bkz: http://www.pathwaycommons.org/pc/webservice.do?version=2.0&cmd=get_record_by_cpath_id&q=767212&output=gsea&output_id_type=UNIPROT – posdef
bu soru da ilgili ve yararlı olan. Onları kontrol edin [https://stackoverflow.com/questions/1635764/string-parsing-in-java-with-delimeter-tab-t-using-split](here) – Bouramas