2015-06-24 44 views
-2

我知道這似乎是一個重複的問題,但我找不到我需要的東西。RegExp模式找到單詞

我想製作一個TextView(Android),其中每個單詞都是可點擊的,但我需要匹配每個字符序列除非空白,所以像「你好!」或「«明天」「días」對我來說是有效的匹配。

所以我不需要模式來查找空格,因爲我不想分裂。

我的情況是Android的,但我只需要正則表達式,我與http://regexr.com/玩測試和一個示例文本測試是:

精讀CIENcañonesPOR班,VIENTO EN波帕一戶貝拉, no corta el mar,sino vuela,un velerobergantín:bajel pirata que llaman por su bravura el Temido,en todo mar conocido del uno al otroconfín。 La luna en el mar riela,en la lona gime el viento,y alza en blando movimiento olas de plata y azul; yantacapitánpirata,cantando 阿雷格里拉波阿,亞洲一個聯合國,al otro歐洲和其他地區 Stambul。 «Navega,veleromío,sin temor,que ni enemigonavío,ni tormenta,ni bonanza,tu rumbo a torcer alcanza,ni a sujetar tu valor。 「Veinte presas hemos hecho despecho delinglés,y han rendido sus pendones cien naciones a mis pies。 «Quées mi barco?米特羅。 ¿Quées mi Dios? La libertad。 Mi ley? ¡La fuerza y el viento! Mi únicapatria? ¡La mar! «Allámuevan feroz guerra ciegos reyes por un palmomásde tierra:que yo tengoaquípormíocuanto abarca el mar bravío,quien nadie impuso leyes。 «Y no hay playa sea cual quiera, ni bandera de esplendor,que no sienta mi derecho ydépecho a mi valor。 «Quées mi barco?米特羅。 Quées mi Dios? La libertad。 Mi ley? ¡La fuerza y el viento! Miúnicapatria? ¡La mar! «A la voz de «barco viene!»Es de vercómovira y se previene a todo trapo a escapar:que yo soy el rey del mar,y mi furia es de temer。你可以在這裏找到你想要的東西。 «Quées mi barco?米特羅。 Quées mi Dios? La libertad。 Mi ley? ¡La fuerza y el viento! Miúnicapatria? ¡La mar! «Sentenciado estoy a muerte! Yo merío:no me abandone la suerte,y al mismo que me condena,colgaréde alguna antena,quizáen su propio navío。 «Y si caigo,¿êes es la vida? Por perdida ya la di cuando el yugo del esclavo,como un bravo,sacudí。 «Quées mi barco?米特羅。 ¿Quées mi Dios? La libertad。 Mi ley? ¡La fuerza y el viento! Mi únicapatria? ¡La mar! «Son mimúsicamejor aquilones; elestrépitoy temblor de los cables sacudidos,del negro mar los bramidos y el rugir de miscañones。 «Y del trueno al son violento,y del viento al rebramar,你好,我是duermo sosegado。 Arrullado por el mar。 «¿Quées mi barco?米特羅。 Quées mi Dios? La libertad。 Mi ley? La Fuerza y el viento! Miúnicapatria? ¡La mar!

+0

你的榜樣將通過[\wñáúéí]匹配+ ...我想你需要一些更lettersbut我認爲你可以得到點 –

+0

@ JochenSchultz我希望你同意我的觀點,即將任何UTF-8字符添加到正則表達式似乎並不是一個好的解決方案,但也許我是用regexp新手,並且是唯一的解決方案,沒有更好的方法嗎? – rubdottocom

回答

2

你幾乎已經自己回答了你的問題。

「除非空格字符的每個序列」 - 正是/([^\s])+/g

+1

如果支持(否定\ s),我就用'/ \ S +/g'去。值得注意的是匹配空間,製表符,回車符,換行符和換行符。 – Tensibai

+1

['\ S'支持](http://developer.android.com/reference/java/util/regex/Pattern.html)。更多的是,該頁面上的問題有一個答案(儘管'\\ S +'用於'replaceAll')。 –

+0

謝謝安迪,我知道這很容易,但我可以向你保證,很難找到答案,太容易的問題,通常用一個.split句子來回答。 – rubdottocom