Замените пробел специальным символом [duplicate]

У меня есть Как это сделать, я удаляю все элементы, кроме значения, следующего как 1 и 3.

  ListItemCollection liCol = ddlcustomertype.Items;  for (int i = 0; i & lt; liCol.Count; i ++) {ListItem li = liCol [i];  if (li.Value! = "1" || li.Value! = "3") ddlcustomertype.Items.Remove (li);  }  
20
задан DarkLightA 27 December 2010 в 21:25
поделиться

2 ответа

Граница слова (\b) - это совпадение с нулевой шириной, которое может соответствовать:

  • Между символом слова (\w) и символом без слова (\W) или
  • Между символом слова и началом или концом строки.

В Javascript определение \w - [A-Za-z0-9_] и \W - это что-то else.

Отрицательная версия \b, записанная \B, является совпадением нулевой ширины, где выполнено выше not . Поэтому он может соответствовать:

  • Между двумя символами слова.
  • Между двумя символами без слова.
  • Между символом без слова и началом или конец строки.
  • Пустая строка.

Например, если строка "Hello, world!", то \b соответствует в следующих местах:

 H e l l o ,   w o r l d !
^         ^   ^         ^ 

И \B соответствует тем местам, где \b не соответствует:

 H e l l o ,   w o r l d !
  ^ ^ ^ ^   ^   ^ ^ ^ ^   ^
66
ответ дан Mark Byers 17 August 2018 в 09:58
поделиться
  • 1
    Хороший. По моему опыту, объяснение границ слов значительно сложнее, чем , используя . – Alan Moore 28 December 2010 в 00:35
  • 2
    Раньше я не видел такого ясного объяснения границ слов. Великий! – Salil 2 March 2012 в 01:29

Основной целью non-word-boundary является создание регулярного выражения, которое гласит:

  • , если мы находимся в начале / конце word char (\w = [a-zA-Z0-9_]) убедитесь, что предыдущий / следующий символ также является word char, например: "a\B." ~ "a\w": "ab", "a4", "a_", ... но не "a ", "a."
  • , если мы находимся в начале / конце a non-word char (\W = [^a-zA-Z0-9_]), убедитесь, что предыдущий / следующий символ также является non-word char, например: "-\B." ~ "-\W" : "-.", "- ", "--", ... но не "-a", "-1"

Для word-boundary это похоже, но вместо того, чтобы убедиться, что смежные символы имеют один и тот же класс (word char / non-word car), они должны отличаться, следовательно, имя word's boundary.

2
ответ дан derenio 17 August 2018 в 09:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: