Ich habe folgende Rubin Regex, die Interpunktion und schließt Perioden auswählt, die Teil Zahlen sind:Wie wählt man Wörter mit Interpunktion aus und schließt Perioden von Abkürzungen aus?
/\p{L}+|(?!\.\d)[[:punct:]]/
The profit was 5.2 thousand dollars.
=> The profit was thousand dollars.
Ich habe einen regulären Ausdruck, die Abkürzungen (U.S.A.) beispielsweise auswählen kann:
(?:[a-zA-Z]\.){2,}
The U.S.A. is located in North America
.
=> U.S.A.
Ich mag die Ideen hinter dieser Regexes verwenden, so dass ich alle der Worte und Interpunktion in einem Satz mit Ausnahme für alle Zeiten in jeder Abkürzung wie wählen:
The U.S.A. is located in North America!
=> The USA is located in North America!
Alle auf Ideen Wie erreiche ich das?
Das Beispiel sieht nicht ganz auf den Punkt, es sieht so aus, als ob Sie nur Abkürzungen mit Ihrer Regex finden und Punkte aus den Übereinstimmungen entfernen möchten. Oder planen Sie, ein Array der Übereinstimmungen zu erhalten und Punkte aus den Array-Elementen, die Abkürzungen sind, zu entfernen? –
Ich plane, den ganzen Text und die Interpunktion zu bekommen und sie in ein Array zu setzen, das jegliche Interpunktion ('.'), Die von Abkürzungen sind, ausschließt. Ist das klarer? – chell
Ja, aber ich denke, es sollte in 2 Schritten gemacht werden. Sie können diskontinuierliche Textteile nicht mit einer übereinstimmenden Iteration abgleichen. Siehe https://ideone.com/ousKNY –