Я считаю, что нашел соответствующий элемент стандартного. В §14.8.2p7 говорится:
Подстановка происходит во всех типах и выражениях, которые используются в типе функции и в объявлениях параметров шаблона.
blockquote>Поскольку
EnableIf
используется в объявлении параметра шаблона, должна произойти замена, и это ошибка в clang .>
Попробуйте использовать регулярные выражения : сопоставляйте группы и представляйте их по желанию:
using System.Text.RegularExpressions;
...
string source = "Users online: 479 browsing: 153 pages";
// match.Groups["text"] - "Users online: "
// match.Groups["number"] - "479"
var match = Regex.Match(source, "^(?<text>.*?)(?<number>[0-9]+)");
// Users online: (479)
label1.Text = $"{match.Groups["text"].Value.Trim()} ({match.Groups["number"].Value})";
Изменить: шаблон регулярного выражения ^(?<text>.*?)(?<number>[0-9]+)
:
^ - anchor: string's beginning
(?<text> ...) - group named "text" which contains
.*? - any characters, as few as possible
(?<number> ...) - group named "number" which contains
[0-9]+ - digits (char in [0..9] range); "+" - at least one
Вы можете попробовать использовать подстроку. Что-то вроде этого:
var x = //get the text
var textToDisplay = x.Substring(0, x.IndexOf("b");
Label1.Text = textToDisplay;
"^(?<text>.*?)(?<number>[0-9]+)"
: кажется, что вы пропустили i> последний+
. Если это не поможет, укажите код – Dmitry Bychenko 13 July 2018 в 13:59