Xpath删除文本之间的空格

ank*_*kit 1 html php xpath parsing html-parsing

我正在使用以下XPath从html页面中选择一些数据.我想要选择的值之间有一些空格:

example=value1    value2       value3
Run Code Online (Sandbox Code Playgroud)

我的XPath表达式是选择值但删除文本之间的额外空格,如下所示:

value1 value2 value3
Run Code Online (Sandbox Code Playgroud)

如何确保不删除额外的空格?

我的xpath:

//*something/div/input[1]/@value
Run Code Online (Sandbox Code Playgroud)

我从中挑选价值的示例HTML:

<input type="radio" name='radio1' value="R92392   12132                           sdlasldkaskl                  " id='some' >
Run Code Online (Sandbox Code Playgroud)

请注意,我得到的值是R92392 12132 sdlasldkaskl.但我希望保留文本之间的空格.

Sic*_*cco 5

我的XPath引擎不会删除空格,因此它必须是PHP设置.我不完全确定您的情况,因为您没有提供太多代码,但以下内容可能对您有用:

$doc->preserveWhiteSpace = true; // This setting should fix it
$doc->Load('document.xml');
$xpath = new DOMXPath($doc);
$query = '//div/input[1]/@value';
Run Code Online (Sandbox Code Playgroud)

  • 真?令人惊讶的是,不保留空格通常只会删除空格节点(例如缩进XML源),它通常不会影响属性值中的多个空格. (4认同)
  • 问题是由Sicco识别的php配置.创建domDocument的类正在使用此选项$ doc-> preserveWhiteSpace = false; (2认同)