^job\s+\d+$
^матч строки
работа - err..job
\ S + один или несколько пробелов
\ D + один или несколько номеров
$ конец строки
Если вам нужен номер, вы можете использовать
^job\s+(\d+)$
The вокруг скобки \ d + будет поставить номер в группу, которую вы можете ссылаться после матча.
Edit: Так как вы отредактировали оригинальный пост, позвольте мне сказать вам, почему отредактированный регулярное выражение не работает:
^[job\s]([0-9]{7}$)
код [] в регулярном выражении создает набор символов. Это означает, что регулярное выражение пытается сопоставить букву j или письмо o или письмо b или пробельный символ, а затем число.
Edit 2:
Чтобы соответствовать строке, как:
string x = @"Please refer to job 1000000 for more information";
Вам нужно немного другое регулярное выражение. Вы не хотите использовать^для соответствия началу строки или $, чтобы соответствовать концу, потому что, очевидно, это не соответствует всей строке.
Вместо этого вы будете хотеть сделать что-то вроде этого:
Console.WriteLine(Regex.Replace(x,@"job\s+(\d+)","REDACTED!!"));
Если вы хотите сослаться на номер в вашем заменить вы можете сделать что-то вроде этого:
Console.WriteLine(Regex.Replace(x, @"job\s+(\d+)", "Super Awesome Job: $1"));
можно ли просто снять «задание» и использовать остаток? – hexparrot