У меня есть строка с разделенными пробелами адресами, и я хочу отделить номер от названия улицы.Соответствие букв пробелу буквенно-цифровых строк
Так что, если мы имеем:
Street Бла Бла 34
или
34 Street Бла Бла
Я хочу, чтобы регулярное выражение, чтобы соответствовать " Street Blah Blah ", а другой -" 34 "
Он может получить более сложный с адресами, как это:
Überbrückerstraße 24.
, где он должен вернуть "24", а остальное, как на улице или
Järnvägstationg. 3/B
, где он должен вернуть 3/B, а остальное как на улице и т.д.
Я сейчас делаю это с помощью C#, где я разделить все строки пробелом и возврата в зависимости от того строка содержит, по меньшей мере, один номер, а затем вернуть все остальное как улицу.
Однако мне было интересно, было бы более элегантно и эффективнее делать это с помощью Regex.
Я занимаюсь регулярным выражением, но пока не нашел надежного пути. Любые идеи?
Ниже приведены некоторые данные об испытаниях на единицу. Входная улица, ожидаемое число помещения и ожидаемая улица:
[TestCase("Järvägstationg. 3/B", "3/B", "Järvägstationg.")]
[TestCase("Überbrückerstraße 24a", "24a", "Überbrückerstraße")]
[TestCase("Street Blah Blah 34", "34", "Street Blah Blah")]
[TestCase("34 Street Blah Blah", "34", "Street Blah Blah")]
[TestCase("Ueckerstr. 20 b", "20 b", "Ueckerstr.")]
[TestCase("Elmshornerstraße 163", "163", "Elmshornerstraße")]
[TestCase("Hallgartenerstrasse Moritzstr.", "", "Hallgartenerstrasse Moritzstr.")]
[TestCase("19 Green Lane", "19", "Green Lane")]
Я думаю, что из этих
Ueckerstr в. 20 b
является самым сложным, и в этом случае я не возражаю, если в этот раз это не удается.
опечатка Järvägstationg, там должно быть п там: Jar ** п ** vägstationg ;-) – Andreas
вид дубликата: Производительность на [SPLIT] (HTTP://stackoverflow.com/questions/3601465/string-split-vs-regex-split) – aloisdg
@aloisdg из вашей ссылки: '(используя символ, который больше не будет существовать в строке)' –