我需要匹配所有这些开始标记:
<p>
<a href="foo">
Run Code Online (Sandbox Code Playgroud)
但不是这些:
<br />
<hr class="foo" />
Run Code Online (Sandbox Code Playgroud)
我想出了这个,并希望确保我做对了.我只抓住了a-z.
<([a-z]+) *[^/]*?>
Run Code Online (Sandbox Code Playgroud)
我相信它说:
/,然后我有这个权利吗?更重要的是,你怎么看?
在搜索SO和Google时,我发现有一些Java HTML解析器一直被各方推荐.不幸的是,很难找到有关各种图书馆优势和劣势的任何信息.我希望有些人花了一些时间来比较这些库,并且可以分享他们学到的东西.
这是我见过的:
如果有一个我错过的主要解析器,我也很想知道它的优点和缺点.
谢谢!
我比java编程语言更熟悉我喜欢从网站中提取数据并将其存储到我的机器上运行的数据库中.这可能在java.If中我应该使用哪种API.例如,网站上列出的学校数量如何使用java提取数据并将其存储到我的数据库中.
我必须从网页中提取一些信息,然后为用户重新格式化.
由于网页有些规律,现在我使用HttpClient将HTML作为字符串进行检索,并使用相关数据在给定位置提取子字符串.
无论如何我想知道是否有更好的方法,也许是一种HTML感知的方式.你会怎么做?
干杯
我有一个严重的问题.我想从标签中提取内容,例如:
<div class="main-content">
<div class="sub-content">Sub content here</div>
Main content here </div>
Run Code Online (Sandbox Code Playgroud)
我期望的输出是:
这里的子内容
主要内容在这里
我试过使用正则表达式,但结果并不那么令人印象深刻.通过使用:
Pattern.compile("<div>(\\S+)</div>");
Run Code Online (Sandbox Code Playgroud)
会在第一个<*/div>标记之前返回所有字符串,
所以有人可以帮我吗?
我想从我的servlet中读取给定URL的源代码(HTML标记).
例如,URL是http://www.google.com,我的servlet需要阅读HTML源代码.为什么我需要这个,我的Web应用程序将阅读其他网页并获取有用的内容并使用它做一些事情.
可以说,我的应用程序显示了一个城市中一个类别的商店列表.如何生成该列表,我的Web应用程序(servlet)通过给定的网页显示各种商店和阅读内容.使用源代码,我的servlet过滤源并获取有用的详细信息.最后创建列表(因为我的servlet无法访问给定URL的Web应用程序数据库).
知道任何解决方案吗?(特别是我需要在servlet中执行此操作)如果您认为还有另一种从其他站点获取详细信息的最佳方法,请告诉我.
谢谢
我有一些代码接收URL,读取文件并搜索与给定正则表达式匹配的字符串,并将任何匹配添加到arrayList,直到它到达文件末尾.如何修改我的代码,以便在阅读文件时,我可以在同一个传递中检查其他与其他正则表达式匹配的字符串,而不是必须多次读取文件检查每个不同的正则表达式?
//Pattern currently being checked for
Pattern name = Pattern.compile("<a id=.dg__ct(.+?)_hpl1.>(.+?)</a>");
//Pattern I want to check for as well, currently not implemented
Pattern date = Pattern.compile("[0-9]{2}/[0-9]{2}/[0-9]{4}");
Matcher m;
InputStream inputStream = null;
arrayList = new ArrayList<String>();
try {
URL url = new URL(
"URL to be read");
inputStream = (InputStream) url.getContent();
} catch (Exception e) {
e.printStackTrace();
} finally {
InputStreamReader isr = new InputStreamReader(inputStream);
BufferedReader buf = new BufferedReader(isr);
String str = null;
String s = null;
try { …Run Code Online (Sandbox Code Playgroud) 我在查找我需要为Java字符串做的一种解析时遇到了麻烦.
所以,这不像是用线条或逗号或其他东西解析那么简单,它有点复杂.
我的程序抓取了一个网页的源代码,我需要解析它以查看视图标记的内容.
解决它之间的问题
<input name="sid" type="hidden" value="
Run Code Online (Sandbox Code Playgroud)
和
" />
Run Code Online (Sandbox Code Playgroud)
所以,如果网页有这个字符串:
<input name="sid" type="hidden" value="stringvaluehere" />
Run Code Online (Sandbox Code Playgroud)
它会输出
stringvaluehere
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?我根本没有发现任何关于这类文件的文档,并且在其他来源询问并没有帮助.
谢谢!
什么是Java相当于:
def filt_out(s):
return re.sub('<a href="(.*)">', '', s.replace('<br/>', '\n').replace('"', '\"').replace('</a>', ''))
Run Code Online (Sandbox Code Playgroud)