简单的正则表达式问题.我有一个以下格式的字符串:
this is a [sample] string with [some] special words. [another one]
Run Code Online (Sandbox Code Playgroud)
提取方括号内的单词的正则表达式是什么,即.
sample
some
another one
Run Code Online (Sandbox Code Playgroud)
注意:在我的用例中,括号不能嵌套.
我想从字符串中删除所有特殊字符.允许的字符是AZ(大写或小写),数字(0-9),下划线(_)或点号(.).
我有以下,它有效,但我怀疑(我知道!)它不是很有效:
public static string RemoveSpecialCharacters(string str)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.Length; i++)
{
if ((str[i] >= '0' && str[i] <= '9')
|| (str[i] >= 'A' && str[i] <= 'z'
|| (str[i] == '.' || str[i] == '_')))
{
sb.Append(str[i]);
}
}
return sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)
最有效的方法是什么?正则表达式会是什么样的,它与正常的字符串操作相比如何?
将要清理的字符串相当短,通常长度在10到30个字符之间.
今天大多数IT项目似乎忽略了现有数据库引擎(如Oracle 11g和SQL Server 2008)中存在的大量功能的主要原因(除了"数据库独立性")有哪些?
或者,从赫尔辛基宣言博客借用这样的方式:
在过去的二十年中,我们发现DBMS内部可用的功能(特性)呈指数级增长.这些功能使我们能够构建数据库应用程序 这就是我们在九十年代蓬勃发展时所做的一切.
但是在新千年开始之际,发生了一些事情.而神秘地使DBMS在数据库应用程序项目中的作用减少到微不足道.(...)从新千年开始,我们将所有应用程序逻辑从DBMS推送到中间层服务器.在DBMS之外实现的东西的功能已经爆炸,并且功能丰富的DBMS几乎不用于除行存储之外的任何东西.
我们正在谈论类似的东西
为什么没有使用这些功能?为什么大多数Java,.NET和PHP开发人员都坚持使用"SELECT*FROM mytable"方法?
我知道如何创建一个.map文件来跟踪错误消息包含实际地址时的访问冲突错误.
但是,如果错误消息说明了什么
Access violation at address 00000000. Read of address 00000000.
Run Code Online (Sandbox Code Playgroud)
我从哪里开始寻找这个问题的原因......?
我正在构建一个使用Oracle数据库10g作为数据库后端的Web应用程序.我意识到Express版本有局限性,但我只是想确保连接数量不是其中之一.
Oracle Express Edition(XE)是否限制并发连接数(例如,查看站点的用户数)?
我在网页上看到一些奇怪的行为......我使用常规脚本标签包含了jQuery(和jQuery UI).当页面加载时,我看到文件已加载(来自本地浏览器缓存,因为文件上有远期的Expires头文件).
但是,似乎jQuery本身会启动一个新的网络请求来再次获取自己,包括一个随机参数值,导致文件下载(即不使用缓存版本).
Chrome网络标签中的屏幕截图:

这很奇怪......这里发生了什么?
更新:触发此行为的代码如下:
$(window).load(function() {
$("#t20ContentRightWrapper").toggle("slide", { direction: "right" }, 400);
});
Run Code Online (Sandbox Code Playgroud)
如果我将其更改为此,则"双重加载"消失:
$(window).load(function() {
$("#t20ContentRightWrapper").toggle("fade", 400);
});
Run Code Online (Sandbox Code Playgroud)
所以基本上,当我使用"幻灯片"动画时,jQuery和jQuery UI会重新加载额外的网络请求,而使用"淡入淡出"动画则不会.
我想使用"幻灯片"动画,所以我需要知道这里发生了什么......!
更新2:这是一个屏幕截图,显示了将鼠标悬停在Chrome中的"Initiator"脚本上时的调用堆栈:

我正在尝试使用ASP.NET(3.5)"路由模块"功能根据URL的内容创建自定义页面.
各种文章,例如:http://blogs.msdn.com/mikeormond/archive/2008/05/14/using-asp-net-routing-independent-of-mvc.aspx解释了如何使用ASP.NET路由到分支到Web服务器上的现有页面.
我想要做的是使用代码即时创建页面.
我的第一次尝试看起来像这样:
public class SimpleRouteHandler : IRouteHandler
{
public IHttpHandler GetHttpHandler(RequestContext requestContext)
{
string pageName = requestContext.RouteData.GetRequiredString("PageName");
Page myPage = new Page();
myPage.Response.Write("hello " + pageName);
return myPage;
}
}
Run Code Online (Sandbox Code Playgroud)
但是这会抛出一个HTTPException,说"响应在这种情况下不可用".在Response.Write语句中.
如何进行?
更新:最后,我采用了基于IHttpModule的方法,结果很简单.
我们正在考虑从Delphi 7迁移到Delphi 2009,并想知道QuickReports是否仍然包含在包中?
我在ASP.NET中实现了一个HttpModule(框架2.0).
从我在服务器上的日志记录中,我可以看到我的HttpModule正在拾取http请求,并且我的代码成功运行(将内容写回Response流).
但是,Web浏览器(IE,FF,Chrome,都是相同的)只是给我一个"连接重置"错误消息.
我检查了服务器上的事件日志; 那里没有相关的错误或消息.
额外信息:当我在FF中使用"Live HTTP Headers"插件时,它甚至不显示我的客户端请求(虽然我确信它到达服务器,因为在服务器日志中捕获了请求).
我如何解决这里发生的事情?
在Internet Explorer中,可以在以下位置找到用于显示XML文档的默认样式表:
res://msxml.dll/DEFAULTSS.xsl
Run Code Online (Sandbox Code Playgroud)
在Firefox中,可以找到等效的
chrome://global/content/xml/XMLPrettyPrint.xsl
Run Code Online (Sandbox Code Playgroud)
Chrome中有相同的东西吗?
asp.net ×2
delphi ×2
c# ×1
database ×1
delphi-2009 ×1
httpmodule ×1
jquery ×1
oracle-xe ×1
quickreports ×1
regex ×1
routing ×1
string ×1
xml ×1
xslt ×1