. Сложнее всего использовать экранированный дефис, чтобы он не зависел от положения. Это \-
внутри класса символов в квадратных скобках.
Но есть еще кое-что. Некоторые из перечисленных перечислений должны быть написаны по-разному. В некоторых случаях они определенно должны.
Это сравнение ароматов регулярных выражений говорит о том, что C♯ может использовать некоторые из простых свойств Unicode. Если вы имеете дело с Unicode, вы, вероятно, должны использовать общую категорию \p{L}
для всех возможных букв, а , возможно, \p{Nd}
для десятичных чисел. Кроме того, если вы хотите разместить всю эту пунктирную пунктирность, а не только HYPHEN-MINUS, вы должны использовать свойство \p{Pd}
. Вы также можете написать эту последовательность символов пробелов просто как \s
, считая, что это не слишком общее для вас.
Все вместе, это работает с апатерном [\p{L}\p{Nd}\p{Pd}!$*]
, чтобы соответствовать любому символу из что [. g5]
Я бы все равно использовал это, даже если бы я не планировал иметь дело с полным набором Unicode, потому что это хорошая привычка, и потому, что эти вещи часто растут за пределами их исходные параметры. Теперь, когда вы поднимаете его для использования в другом коде, он все равно будет работать правильно. Если вы жестко закодируете все символы, это не будет.
Предполагая, что у вас есть настройка SolrCloud, вы можете сделать это:
$SOLR_HOME/server/scripts/cloud-scripts/zkcli.sh -zkhost zkhost:3181 -confname example-cmd putfile /configs/example/managed-schema ./managed-schema
Если вы хотите сделать с Java, вы можете сделать что-то вроде этого:
ZooKeeper zk = new ZooKeeper(host, tick * 15, this);
zk.setData(PATH_IN_ZK, contentString.getBytes(StandardCharsets.UTF_8), -1);