小编Mul*_*ner的帖子

使用Html Agility Pack剥离所有html标记

我有一个像这样的html字符串:

<html><body><p>foo <a href='http://www.example.com'>bar</a> baz</p></body></html>
Run Code Online (Sandbox Code Playgroud)

我希望删除所有html标记,以便生成的字符串变为:

foo bar baz
Run Code Online (Sandbox Code Playgroud)

从SO的另一篇文章中我得出了这个函数(使用Html Agility Pack):

  Public Shared Function stripTags(ByVal html As String) As String
    Dim plain As String = String.Empty
    Dim htmldoc As New HtmlAgilityPack.HtmlDocument

    htmldoc.LoadHtml(html)
    Dim invalidNodes As HtmlAgilityPack.HtmlNodeCollection = htmldoc.DocumentNode.SelectNodes("//html|//body|//p|//a")

    If Not htmldoc Is Nothing Then
      For Each node In invalidNodes
        node.ParentNode.RemoveChild(node, True)
      Next
    End If

    Return htmldoc.DocumentNode.WriteContentTo
  End Function
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不会返回我的预期,而是给出:

bazbarfoo
Run Code Online (Sandbox Code Playgroud)

请问,我哪里出错 - 这是最好的方法吗?

问候和快乐的编码!

更新:通过下面的答案我想出了这个功能,可能对其他人有用:

  Public Shared Function stripTags(ByVal html As String) As String
    Dim htmldoc As New HtmlAgilityPack.HtmlDocument …
Run Code Online (Sandbox Code Playgroud)

html vb.net strip html-agility-pack

17
推荐指数
1
解决办法
2万
查看次数

在PHP中将属性值作为字符串文字访问

好吧,即时通讯重新学习PHP的一个小型家庭项目,并遇到一个问题,因此对于所有你的PHP专家来说快速的一个:

我已经构建了一个抽象类,它应该访问YQL Yahoo返回的JSON对象的属性,这些对象被解码为PHP对象.让我们说我想访问该属性id然后我喜欢这样:

print($phpObject->id);  // Okay
Run Code Online (Sandbox Code Playgroud)

但我希望能够以更抽象的方式访问该属性,即:

$propertyName = 'id';
print($phpObject[$propertyName]); 
print($phpObject["id"]);    
Run Code Online (Sandbox Code Playgroud)

但以上都没有工作 - 我肯定有明显的理由,但我不是PHP专家,我很难说出这个电话.请帮帮我.

php abstract-class object

11
推荐指数
1
解决办法
7469
查看次数

对于url,IO.Path.GetFileName的等效函数?

在.NET 4.0中,IO.Path.GetFileName对于url来说,它的功能是什么?

.net url

11
推荐指数
1
解决办法
2950
查看次数

mySql将行复制到同一个表中,键值已更改(不覆盖现有)

如何从mySql表中复制选择的行并插入仅更改的键值.我可以在同一查询中进行选择和插入吗?

确切地说,我想要的是这样的:

表格列表,ID和ISO3是键:
[ID] [ISO3] [文本]
1,ENU,英文文本
2,ENU,英文
3中的另一文本,ENU,bla bla
1,JPN,与えられた枠

在插入之后,我希望我的表格看起来像这样:
1,ENU,英文文本
2,ENU,英文
3中的另一个文本,ENU,bla bla
1,JPN,与えられた枠
2,JPN,另一个英文文本
3,JPN,bla bla

mysql copy

10
推荐指数
2
解决办法
2万
查看次数

会话在asp.net网站上混淆了

我正在分析几个月前离开公司的一位同事所做的旧asp.net网站的问题.

问题是我们有几次表示两个用户会话混淆了,所以如果例如两个用户登录,则一个用户看到其他用户数据.因为它很少发生(一个月左右),很难弄清楚出了什么问题.

我现在已经通过他的代码进行身份验证,它是这样的:

  1. 用户在公共页面上输入用户名/密码,然后按提交
  2. Page_LoadMasterpage上,代码在mySql数据库中检查用户名/密码是否有效,未过期等,如果确定则返回唯一的用户ID
  3. 然后页面将登录页面保存在这样的会话中(用于以后的注销): HttpContext.Current.Session(Consts.CCookieName_LoginUrl) = Request.RawUrl
  4. 然后userid保存如下: FormsAuthentication.SetAuthCookie(userid, False)
  5. 然后执行重定向到安全区域: Context.Response.Redirect(secureurl, False)
  6. Page_Init安全区域的母版页中,用户标识由以下内容读取:userid = Context.User.Identity.Name
  7. 根据用户ID加载用户数据
  8. 用户导航安全区域,即.重复步骤6-7
  9. 用户突然看到另一个用户数据

我有一些关于出了什么问题的想法,但是想在修改代码之前有一些输入,所以请任何人?

asp.net authentication session forms-authentication

9
推荐指数
1
解决办法
2233
查看次数

为什么IE11会发出此警告:HTML1406:无效的标记开始:"<?"

我的页面被编写并声明为XHTML 1.0 Strict.第一行是这样的:

<?xml version="1.0" encoding="utf-8" ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
        <html xmlns="http://www.w3.org/1999/xhtml">
            <head>
Run Code Online (Sandbox Code Playgroud)

对于XHTML 1.0严格来说,我认为这是正确的,但IE11给出了这个警告:

HTML1406: Invalid tag start: "<?". Question marks should not start tags. File: default.aspx, Line: 1, Column: 2
Run Code Online (Sandbox Code Playgroud)

任何人都知道这是否是我应该担心的事情?

html xhtml doctype internet-explorer internet-explorer-11

8
推荐指数
1
解决办法
5033
查看次数

对齐itextsharp表

有谁知道如何左对齐iTextSharp表?

itext

7
推荐指数
1
解决办法
2万
查看次数

CSS可以自动添加文字吗?

如果您在此链接中检查表单,您将看到必填字段class="required"在CSS中有一个*,在标记中有一个.

http://drupal.org/user

可以在*其中显示了标记完全用CSS添加具有此类的div?

css

7
推荐指数
1
解决办法
5387
查看次数

Facebook喜欢按钮,语言环境不起作用

用户可以在我的网页上更改语言,并希望根据当前语言更改fb like按钮的文本.我使用iframe方法并从fb中读取文档,但这不起作用:

<iframe
  src='http://www.facebook.com/plugins/like.php?locale=en-US&amp;href=http%3A%2F%2Fwww.example.com&amp;layout=button_count&amp;show_faces=false&amp;width=80&amp;action=recommend&amp;colorscheme=light&amp;height=10'
  scrolling='no' frameborder='0'
  style='border:none; overflow:hidden;
  width:80px; height:80px;'
  allowTransparency='true'></iframe>
Run Code Online (Sandbox Code Playgroud)

我在上面的src中设置了html lang ='en-US'和locale = en-US,但仍然以我的windows语言环境语言显示文本.

我究竟做错了什么?

facebook facebook-like

6
推荐指数
1
解决办法
8507
查看次数

即使输入有效,也会弹出自定义验证消息

我正在尝试为输入定义自己的无效错误消息type='email'.

我使用下面的HTML.问题是,在提交输入时,如果输入值有效,我会收到自定义错误消息EVEN.

<input name="resp_mail" required="required" onchange="try{setCustomValidity(' ')}catch(e){}" onkeypress="try{setCustomValidity(' ')}catch(e){}" oninvalid="setCustomValidity('Custom error message')" type="email" placeholder="Enter mail" />
Run Code Online (Sandbox Code Playgroud)

也看到这个小提琴

html validation html5

6
推荐指数
1
解决办法
1469
查看次数