Оказывается, поиск регулярных выражений выполняется несколько иначе в pymongo, но так же просто.
Regex выполняется следующим образом:
db.collectionname.find({'files':{'$regex':'^File'}})
Это будет соответствовать всем документам, у которых есть свойство файлов, в котором есть элемент внутри, который начинается с файла
Используйте замену Environment.NewLine
myString = myString.Replace(System.Environment.NewLine, "replacement text")
, Как упомянуто в других сообщениях, если бы строка прибывает из другой среды (ОС) тогда, необходимо было бы заменить ту конкретную реализацию сред управляющие символы новой строки .
Используйте.Replace () метод
Line.Replace("\n", "whatever you want to replace with");
Не забывайте, что замена не делает замены в строке, но возвращает новую строку с замененными символами. Следующее удалит разрывы строки (не, заменяют их). Я использовал бы @Brian R. Метод Bondy при замене их чем-то еще, возможно, обернутым как дополнительный метод. Не забудьте проверять на нулевые значения сначала перед тем, чтобы называть Замену или дополнительные предоставленные методы.
string line = ...
line = line.Replace( "\r", "").Replace( "\n", "" );
Как дополнительные методы:
public static class StringExtensions
{
public static string RemoveLineBreaks( this string lines )
{
return lines.Replace( "\r", "").Replace( "\n", "" );
}
public static string ReplaceLineBreaks( this string lines, string replacement )
{
return lines.Replace( "\r\n", replacement )
.Replace( "\r", replacement )
.Replace( "\n", replacement );
}
}
Я использовал бы Среду. Новая строка, когда я хотел вставить новую строку для строки, но не удалить все новые строки из строки.
В зависимости от Вашей платформы у Вас могут быть различные типы новых строк, но даже в той же платформе часто различные типы новых строк используются. В особенности при контакте с форматами файлов и протоколами.
string ReplaceNewlines(string blockOfText, string replaceWith)
{
return blockOfText.Replace("\r\n", replaceWith).Replace("\n", replaceWith).Replace("\r", replaceWith);
}
Если бы Ваш код, как предполагается, работает в различных средах, я рассмотрел бы использование Environment.NewLine
постоянный, так как это конкретно эти newline
используется в определенной среде.
line = line.Replace(Environment.NewLine, "newLineReplacement");
Однако, если Вы получаете текст из файла, происходящего в другой системе, это не могло бы быть корректным ответом, и необходимо заменить любой постоянной новой строкой, используется в другой системе. Это обычно будет \n
или \r\n
.
Расширяться. Ответ Anyi.9, необходимо также знать различные типы разрыва строки во всеобщем употреблении . Зависящий от того, где Ваш файл произошел, можно хотеть посмотреть на проверку, что Вы ловите все альтернативы...
string replaceWith = "";
string removedBreaks = Line.Replace("\r\n", replaceWith).Replace("\n", replaceWith).Replace("\r", replaceWith);
должен получить Вас движение...
string s = Regex.Replace(source_string, "\n", "\r\n");
или
string s = Regex.Replace(source_string, "\r\n", "\n");
в зависимости от того, каким путем вы хотите идти.
Надеюсь, это поможет.