草庐IT

定界符

全部标签

c# - 在语法上是否需要不同的打开和关闭定界符?

在对智能引号和编程语言进行类比时,我想到可能不需要用于开始和结束定界符的不同字符,而只是为了提高可读性而做出的选择。例如,Ruby’sanonymousfunctions中的参数使用相同的管道打开和关闭。Haskell使用带有极端偏见的空白。我不是在问是否需要不同类型的定界符——索引器的方括号,block的大括号——而是是否需要不同的左括号和右括号(例如(和))在大多数语言中都是语法上必需的,或者仅仅是设计者的偏好。 最佳答案 在语法上不是必需的,但如果开始和结束定界符相同,则很难(或不可能)嵌套内容。展览A是POSIX外壳,在哪里

c# - 使用 C# 从 TCP 流中解析串联的、非定界的 XML 消息

我正在尝试解析通过TCP发送到我的C#应用程序的XML消息。不幸的是,协议(protocol)无法更改,XML消息没有定界,也没有使用长度前缀。此外,字符编码不固定,但每条消息都以XML声明开头.问题是,我如何使用C#一次读取一条XML消息。到目前为止,我尝试将数据从TCP流读取到字节数组中并通过MemoryStream使用它.问题是,缓冲区可能包含多个XML消息,或者第一条消息可能不完整。在这些情况下,我在尝试使用XmlReader.Read解析它时遇到异常或XmlDocument.Load,但不幸的是XmlException并不能真正让我区分问题(解析本地化错误字符串除外)。我尝试

c# - 拆分字符串并忽略引号内的定界符

我正在使用.NET的String.Split方法使用逗号拆分字符串,但我想忽略用双引号引起来的字符串。我读过一个例如下面的字符串。Fruit,10,"Bananas,Oranges,Grapes"我想得到以下内容Fruit10"Bananas,Oranges,Grapes"目前我得到以下输出Fruit10"BananasOrangesGrapes"entercodehere在遵循建议和提供的答案之后,这里是我最终得到的示例。(这显然对我有用)ImportsMicrosoft.VisualBasic.FileIODimfileReaderAsNewTextFieldParser(file

c# - String.Split() - 将连续的定界符视为一个

我正在尝试解析一组“固定宽度”数据文件,我在引号中使用它,因为每个数据文件的宽度不同。但是,这些字段由X个空格分隔,所以我想只读行,然后执行line.Split('')但是,这对连续空格不起作用!! 最佳答案 您有几个选择。第一种是使用接受StringSplitOptions参数并传入StringSplitOptions.RemoveEmptyEntries的string.Split()重载:string[]columns=lineOfText.Split(new[]{''},StringSplitOptions.RemoveEmp

C# - IEnumerable 到定界字符串

转换IEnumerable的函数式编程方法是什么?到分隔字符串?我知道我可以使用循环,但我正在尝试围绕函数式编程。这是我的例子:varselectedValues=fromListItemitemincheckboxList.Itemswhereitem.Selectedselectitem.Value;vardelimitedString=??..或者我可以只在第一个var赋值中这样做(将每个结果附加到前一个结果)? 最佳答案 string.Join(",",string[]enumerable)

Javascript 正则表达式定界符(正斜杠的任何替代方法)?

在Javascript中有什么方法可以使用与/(正斜杠)不同的字符作为正则表达式中的分隔符?大多数其他语言都有这样做的方法。例如,Perl:m@myregex@我们是否仅限于在Javascript中使用“/”? 最佳答案 在JavaScript中使用正则表达式的简单方法是用/字符分隔它。但是,如果您想使用全局对象RegExp,那么您需要使用普通字符串转义规则将字符串作为第一个参数传递给构造函数。以下是等价的。//shorthandway.varre=/\w+/;//awaytopassastringinvarre=newRegExp

php - preg_match 如何处理使用\Q..\E 时的定界符?

我在玩正则表达式,我尝试了\Q..\E转义序列。第一次尝试:$regex='/\Qhttp://\E/';var_dump(preg_match($regex,'http://'));它告诉我'\'是未知修饰符,完全可以理解。第二次尝试:$regex='/\Qhttp:\/\/\E/';var_dump(preg_match($regex,'http://'));var_dump(preg_match($regex,'http:\/\/'));它运行,不匹配第一个字符串,但匹配第二个。我知道我可以使用其他分隔符或不使用\Q..\E来解决它,但我很好奇它是如何工作的。我首先通过它通过分隔

PHP preg_split,表达式 i 大括号并保存定界符

我已经为此苦苦挣扎了半天,但我似乎找不到答案。请帮助菜鸟。:)我有一个字符串,它由几个放在大括号中的句子组成。它看起来像这样:{super骗人的额外文字。}{很棒的另一个文字!}{我们又来了...}现在我想拆分它。我发现我可以搜索.}{等模式。所以我这样做了:$key=preg_split('/[!?.]{1,3}\}\{/',$key);但是这样我失去了定界符,我失去了所有那些。!?等在句末。我试过这样做:$key=preg_split('/([!?.]{1,3}\}\{)/',$key,-1,PREG_SPLIT_DELIM_CAPTURE);$sentences=array();

php - 通过 php 的定界符本身拆分字符串

我正在尝试从一个长文件中提取php代码。我希望丢弃不在PHP标记中的代码。示例helloworld,itsawonderfuldaySomemoretextorHTMLIjustechoedtheuser_nameanddatetimevariables.我想返回一个数组:array([1]=>""[2]=>"")我想我可以用正则表达式做到这一点,但我不是专家。有什么帮助吗?我用PHP写这个。:) 最佳答案 您必须查看源代码才能看到结果,但这是我想出的:$string='helloworld,itsawonderfuldaySome

php - 在 preg_replace 中使用 £ 作为定界符可以吗?

我正在将我发现的eregi_replace函数转换为preg_replace,但eregi字符串几乎包含键盘上的每个字符。所以我尝试使用£作为分隔符..它目前正在工作,但我想知道它是否可能会导致问题,因为它是一个非标准字符?这是eregi:functionmakeLinks($text){$text=eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_\+.~#?&//=]+)','\\1',$text);$text=eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_\+.~#?&//=]