/ / Wzór Regex nie identyfikuje wzorca - Android, regex

Wzór Regex nie identyfikuje wzorca - Android, regex

Używam wzorca regex do wyodrębniania pasujących elementów z łańcucha

Mój wzór to:

"^(([^\.\-\,a-wy-z]([\(]?(\+|[x])?\d+[\)]?)?[\s\.\-\,]?([\(\d[\)]?)?[\s\.\-\,]?(\d+[\s\.\-\,]?)+[^\.\-\,a-z])|((\+|[x])?\d+))$"

Mój ciąg to

"This is the string +971 987654321 form which +91 9876543210 all the phone number +91 987 654 3210 has to be extracted +91 987 654 3210 and displayed in the +971-98-7654321 logcat and the post office box  number is 233227"

Ale niestety wzór nie identyfikujedowolny pasujący wzór z ciągu. Zatwierdziłem wyrażenie z "Check RegExp" poprzez akcję zamiaru. Tutaj wzór z powodzeniem identyfikuje wszystkie numery telefonów, których użyłem w swoim ciągu

Każda pomoc jest doceniana.

Odpowiedzi:

1 dla odpowiedzi № 1

Zakładając co najmniej 10 cyfry w numerze telefonu (z wyjątkiem +, przestrzeń, - itp.), to zadziała

s+(+[ds-]{10,})s+

Regex Demo

Jeśli zakładasz, nie może być żadnych spacji oddzielających liczbę i słowo, wtedy możesz użyć

(+[ds-]{10,})