Разделить строку в csharp как javascript - PullRequest
0 голосов
/ 20 марта 2020

Я пытаюсь импортировать некоторый текст из html объекта в форме C#.

var a = document.getElementById('js_CityPosition0Link').title;
console.log(a);

var b = a.split(" (");
console.log(b);

var c = b[0];
console.log(c);

Я могу получить строку "a", но не могу преобразовать в "c" на C# языке как javascript.

Ответы [ 2 ]

1 голос
/ 20 марта 2020

Вы должны преобразовать его в массив, и тогда вы сможете разбить строку

      string str = "Belediye Binasi (10)";
            string[] str_toArray = str.Split('(');

            foreach(string val in str_toArray)
            {
                Console.WriteLine(val);
            }

            Console.WriteLine("The result you need : {0}", str_toArray[0]);
            Console.ReadKey();

Результат:

Belediye Binasi
10)
The result you need : Belediye Binasi

enter image description here

0 голосов
/ 20 марта 2020

Вместо использования Split или Substring или IndexOf и других функций управления строками, вы можете сделать это в одной строке Regex:

string a = "Belediye Binasi (10)";
string c = Regex.Match(a, @"^(.+) \(\d+\)$").Groups[1].Value;

Это также менее подвержено ошибкам в других случаях, например, когда a is Belediye (Ye Boi) Binasi (10).

Разделение подходит для случаев, когда вы действительно хотите разделить что-то по частям (например, список свойств), но когда вы извлекаете данные из обычного (то есть формат не изменяется) текста тогда регулярное выражение - лучший способ сделать это.

...