以下是我的文字,它存储在${Tooltipdata}
:
<hr><b><strong>Task Details</strong></b><hr><b>Date Created: </b> 02/21/2014 07:52pm<br>
<b>Date Modified: </b> 02/24/2014 05:47pm<br><b>Assigned to: </b> Administrator<br>
<b>Created By: </b> Administrator<br><b>Status: </b> Pending Input<br><b>Description:
</b> test<br>
我希望得到这样的结果:
Task Details Date Created: 02/21/2014 07:52pm Date Modified: 02/24/2014 05:47pm Assigned to: Administrator
Created By: Administrator
Status: Pending Input
Description: test.
简单我想删除HTML标记。
答案 0 :(得分:1)
您可以使用Evaluate关键字来运行python re.sub命令。这样的事情应该有效:
*** Keywords ***
| Remove HTML tags
| | [Documentation] | Strip HTML tags from the given string
| | [Arguments] | ${string}
| | ${result}= | Evaluate | re.sub(r'<.*?>', '', '''${string}''') | re
| | [Return] | ${result}
*** Test cases ***
| Example
| | ${Tooltipdata}= | Some keyword which returns the tooltip data
| | ${string}= | Remove HTML tags | ${Tooltipdata}
如果您不熟悉正则表达式,则上述表达式表示“匹配&lt;和&gt;”之间的最短字符串,re.sub
命令将用空字符串替换每个匹配项。< / p>
如果您的html标记包含其中包含 更好的选择是在python中编写关键字,并使用真正的HTML解析库(如Beautiful Soup)来解析数据。有关代码示例,请参阅this question。>
的属性,则会失败,如果您的数据同时包含&lt;
答案 1 :(得分:0)
您可以尝试使用正则表达式:
import re
data = "<hr><b><strong>Task Details</strong></b><hr><b>Date Created: </b> 02/21/2014 7:52pm<br><b>Date Modified: </b> 02/24/2014 05:47pm<br><b>Assigned to: </b> Administrator<br><b>Created By: </b> Administrator<br><b>Status: </b> Pending Input<br><b>Description: </b> test<br>"
# get text without tag
result = re.split(r'<[A-z\/]*>', data)
# print with removed tag
print ''.join(result)
答案 2 :(得分:0)
通过使用String Library,我们可以替换String。这是我用于替换字符串的代码。
${str} = Replace String ${Tooltipdata} <hr> a