我正在ASP.NET/C#中编写CMS,我需要处理每个页面请求这样的事情:
<html>
<head>
<title>[Title]</title>
</head>
<body>
<form action="[Action]" method="get">
[TextBox Name="Email", Background=Red]
[Button Type="Submit"]
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
并当然更换[...]。
我的问题是我应该如何使用ANTLR或Regex来实现它?什么会更快?请注意,如果我要使用ANTLR来实现它,我认为我需要实现XML,作为[..]的附加内容。
我将需要实现参数,等等。
编辑:请注意,我的正则表达式甚至看起来像这样:
public override string ToString()
{
return Regex.Replace(Input, @"\[
\s*(?<name>\w+)\s*
(?<parameter>
[\s,]*
(?<paramName>\w+)
\s*
=
\s*
(
(?<paramValue>\w+)
|
(""(?<paramValue>[^""]*)"")
)
)*
\]", (match) =>
{
...
}, RegexOptions.IgnorePatternWhitespace);
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一个快速的.NET类/库,它具有支持通配符(*)AND incase-sensitivity的StringComparer.有任何想法吗?
我有大约50个T-SQL文件,其中一些是30MB,但有些是700MB.我想过手动执行它们,但如果文件大于10MB,则会在SQL Server Management Studio上引发内存不足异常.
有任何想法吗?
我有一些纯文本和HTML.我需要创建一个PHP方法,它将返回相同的html,但<span class="marked">在文本的任何实例之前和</span>之后.
请注意,它应该支持html中的标记(例如,如果文本是blabla这样的话,它应该标记为何时bla<b>bla</b>或<a href="http://abc.com">bla</a>bla.
它应该是敏感的并且支持长文本(使用多行等).
例如,如果我使用文本"我的名字是josh"和以下html调用此函数:
<html>
<head>
<title>My Name Is Josh!!!</title>
</head>
<body>
<h1>my name is <b>josh</b></h1>
<div>
<a href="http://www.names.com">my name</a> is josh
</div>
<u>my</u> <i>name</i> <b>is</b> <span style="font-family: Tahoma;">Josh</span>.
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
......它应该返回:
<html>
<head>
<title><span class="marked">My Name Is Josh</span>!!!</title>
</head>
<body>
<h1><span class="marked">my name is <b>josh</b></span></h1>
<div>
<span class="marked"><a href="http://www.names.com">my name</a> is josh</span>
</div>
<span class="marked"><u>my</u> <i>name</i> <b>is</b> <span style="font-family: Tahoma;">Josh</span></span>.
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
谢谢.
我有一个简单数字的文件,例如:
66
Run Code Online (Sandbox Code Playgroud)
要么
126
Run Code Online (Sandbox Code Playgroud)
如何将其读取为intC++中的值?
请注意,该文件可能还包含一些空格或在数字后面输入.
我开始是这样的:
int ReadNumber()
{
fstream filestr;
filestr.open("number.txt", fstream::in | fstream::app);
filestr.close()
}
Run Code Online (Sandbox Code Playgroud)
怎么继续?
谢谢.
使用BinaryReader从C#流读取无符号24位整数的最佳方法是什么?
到目前为止,我使用了这样的东西:
private long ReadUInt24(this BinaryReader reader)
{
try
{
return Math.Abs((reader.ReadByte() & 0xFF) * 256 * 256 + (reader.ReadByte() & 0xFF) * 256 + (reader.ReadByte() & 0xFF));
}
catch
{
return 0;
}
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来做到这一点?
在Google App Engine中,请考虑以下数据存储模型:
class Update(db.Model):
content = db.TextProperty()
date = db.DateTimeProperty()
source = db.StringProperty()
Run Code Online (Sandbox Code Playgroud)
要添加新记录,我会执行以下操作:
db.put(Update(content=..., date=..., source=...))
Run Code Online (Sandbox Code Playgroud)
如果记录尚不存在,如何将记录添加到数据存储区?最有效的方法是什么?
我需要在某些网站上实现以下布局结构:

如您所见,在此对话中有3个参与者.参与者说的每一行都在泡沫中.每个参与者都有不同的颜色.参与者的所有气泡与左侧的距离相同.
我正在寻找一个实现这种布局结构(或类似的布局结构)的jQuery插件.这个插件应该支持至少2和3个参与者,但更多的选项将是伟大的.
如果不存在这样的插件,我该如何实现呢?我的意思是,我如何计算每个气泡的宽度(取决于参与者数量)和每个气泡的左边距?
谢谢!
??如果左表达式为null或未定义,Spider的 null-coalescing运算符将返回正确的表达式.
var name = options.name ?? "default name";
Run Code Online (Sandbox Code Playgroud)
它是如何工作的?
我是一个初学C++程序员.在C#中,我使用System.Net.Sockets.Socket类来表示网络套接字,以创建/连接服务器.我怎样才能在C/C++中做同样的事情?有没有这样的课程?
c# ×3
.net ×2
c++ ×2
antlr ×1
c ×1
file ×1
html ×1
javascript ×1
jquery ×1
networking ×1
performance ×1
php ×1
regex ×1
sockets ×1
spiderlang ×1
sql ×1
sql-server ×1
t-sql ×1