我将如何编写一个正则表达式(C#)来检查给定的字符串,看它是否有任何字符,而不是以下字符:
AZ
AZ
ÆæA A O O - "
我试图弄清楚如何在调试期间判断我的Android应用程序中是否有特定的ipaddress(我没有在实际设备上尝试过).
从阅读开始,InetAddress.isReachable似乎应该为我做这件事.
最初我认为我可以编写类似的代码:
InetAddress address = InetAddress.getByAddress(new byte [] {(byte)192,(byte)168,(byte)254,(byte)10); success = address.isReachable(3000);
即使我有理由确定它是可到达的地址,这也会返回false.
我发现,如果我将其更改为127,0,0,1,则返回成功.
我的下一次尝试是相同的代码,但我使用了从www.google.com的ping获得的地址(截至撰写本文时为72.167.164.64).没有成功.
那么我尝试了另一个例子:
int timeout = 2000;
InetAddress[] addresses = InetAddress.getAllByName("www.google.com");
for (InetAddress address : addresses)
{
if ( address.isReachable(timeout))
{
success = true; // just set a break point here
}
}
Run Code Online (Sandbox Code Playgroud)
我对Java和Android比较陌生,所以我怀疑我错过了什么,但我找不到任何可以表明它是什么的东西.
是否有可用于与Windows OS交互的Java库/ API,例如在命令提示符上执行命令并将输出返回给程序?
返回变量时,一步一步地发生了什么.我知道如果它是内置的并且适合,它会被抛入rax/eax/ax.当它不适合和/或不是内置时会发生什么?更重要的是,是否有保证的复制构造函数调用?
编辑:析构函数怎么样?那被称为"有时","总是"还是"从不"?
我正在使用ASP.NET 4中的新路由功能(Web表单,而不是MVC).现在我有一个asp:ListView绑定到数据源.其中一个属性是ClientID我想用来从ListView项链接到另一个页面.在global.asax我已经定义了一个路线:
System.Web.Routing.RouteTable.Routes.MapPageRoute("ClientRoute",
"MyClientPage/{ClientID}", "~/Client.aspx");
Run Code Online (Sandbox Code Playgroud)
因此,http://server/MyClientPage/2如果存在ClientID = 2 ,则例如是有效的URL.
在ListView项目中,我有一个asp:HyperLink,以便我可以创建链接:
<asp:HyperLink ID="HyperLinkClient" runat="server"
NavigateUrl='<%# "~/MyClientPage/"+Eval("ClientID") %>' >
Go to Client details
</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
虽然这有效,但我更喜欢使用RouteUrl表达式来使用RouteName而不是硬编码路由.例如,使用常量ClientID = 2,我可以写:
<asp:HyperLink ID="HyperLinkClient" runat="server"
NavigateUrl="<%$ RouteUrl:ClientID=2,RouteName=ClientRoute %>" >
Go to Client details
</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
现在我想知道我是否可以组合路由表达式语法和数据绑定语法.基本上我喜欢用2上面的常量替换<%# Eval("ClientID") %>.但是以天真的方式做到这一点......
<asp:HyperLink ID="HyperLinkClient" runat="server"
NavigateUrl='<%$ RouteUrl:ClientID=<%# Eval("ClientID") %>,RouteName=ClientRoute %>' >
Go to Client details
</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
...不起作用:<%# Eval("ClientID") %>未评估但被视为字符串.到目前为止,使用几种引号也无济于事(大多数情况下为Parser错误).
问题:我有可能在这里实现的目标吗?如果是,那么正确的方法是什么?
先感谢您!
asp.net data-binding asp.net-routing url-routing asp.net-4.0
是否可以从Maven启动调试器,如jdb?我有一个pom.xml文件,可以成功编译项目.但是,程序挂起了某个地方,我真的想启动jdb或等效的调试器来查看发生了什么.
我编译使用mvn compile并启动使用:
mvn exec:java -Dexec.mainClass="com.mycompany.app.App"
Run Code Online (Sandbox Code Playgroud)
我期待的是:
mvn exec:jdb -Dexec.mainClass="com.mycompany.app.App"
Run Code Online (Sandbox Code Playgroud)
启动调试器,但像往常一样,我的期望与maven的理念不一致.
另外,我找不到任何文档(在Maven的网站或谷歌上)来描述调试的工作原理.我怀疑我必须使用一些插件.
我有以下模块
public class LowerCaseRequest : IHttpModule {
public void Init(HttpApplication context) {
context.BeginRequest += new EventHandler(this.OnBeginRequest);
}
public void Dispose() { }
public void OnBeginRequest(Object s, EventArgs e) {
HttpApplication app = (HttpApplication)s;
if (app.Context.Request.Url.ToString().ToLower().EndsWith(".aspx")) {
if (app.Context.Request.Url.ToString() != app.Context.Request.Url.ToString().ToLower()) {
HttpResponse response = app.Context.Response;
response.StatusCode = (int)HttpStatusCode.MovedPermanently;
response.Status = "301 Moved Permanently";
response.RedirectLocation = app.Context.Request.Url.ToString().ToLower();
response.SuppressContent = true;
response.End();
}
if (!app.Context.Request.Url.ToString().StartsWith(@"http://zeeprico.com")) {
HttpResponse response = app.Context.Response;
response.StatusCode = (int)HttpStatusCode.MovedPermanently;
response.Status = "301 Moved Permanently";
response.RedirectLocation = app.Context.Request.Url.ToString().ToLower().Replace(@"http://zeeprico.com", @"http://www.zeeprico.com"); …Run Code Online (Sandbox Code Playgroud) 使用CSS水平和垂直对齐div其位置的最简单方法是relative什么?它的宽度和高度div是未知的,即它应该适用于每个div维度和所有主要浏览器.我的意思是中心对齐.
我想使用以下方法进行水平对齐:
margin-left: auto;
margin-right: auto;
Run Code Online (Sandbox Code Playgroud)
像我一样在这里.
这是一个很好的跨浏览器水平对齐解决方案吗?
我怎么能做垂直对齐?
我错过了一些我收集的相当简单的语法.我正在尝试将元素标签重写为其他内容,并保持其他所有内容不变.
object htmlRule extends RewriteRule {
override def transform(n: Node): Seq[Node] = n match {
case Elem(prefix, "document", attribs, scope, child@_*) =>
Elem(prefix, "html", attribs, scope, child)
case other => other
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我要求解释两件事:
1)"child @ _*"究竟用简单的英语表示什么?
2)如何捕获"child @ _*"的值并让它直接传递给新元素?目前,我得到以下错误,这是有道理的.
[error] found : Seq[scala.xml.Node]
[error] required: scala.xml.Node
[error] Elem(prefix, "html", attribs, scope, child)
Run Code Online (Sandbox Code Playgroud)
我也不是这样,所以如果有一个更好的方法来简单地更改特定节点的元素名称,那就让我们来吧......
谢谢, -
java ×3
asp.net ×2
c# ×2
css ×2
.net ×1
alignment ×1
android ×1
api ×1
asp.net-2.0 ×1
asp.net-4.0 ×1
c++ ×1
data-binding ×1
debugging ×1
html ×1
httphandler ×1
httpmodule ×1
javascript ×1
jquery ×1
maven-2 ×1
regex ×1
return-value ×1
scala ×1
url-routing ×1
windows ×1
xhtml ×1
xml ×1