这里是输入我的功能为什么java String中的“contains”方法返回找不到?
"<div class=\"xbox\">TESTING<span class=\"newbox\"><a href=\"javascript:void(0);\" id=\"btnbox\">Use a new box</a></span></div><div class=\"cardnumber\">***-1111</div></div>"
当我做在它下面永远不会返回任何东西,但-1
input.indexOf("cardnumber")
这是不工作的原因吗?当我做一个的indexOf(“格”),它返回正常...(帮助)
感谢球员(对不起,不张贴早些时候单元测试)
public Cart viewCart() {
ResponseAndCookies result = service.makeHttpRequestWithUrl("https://www.xbox.com/account/fakebox/");
String response = result.getResponse();
String availableCreditCard = "<div class=\"cardnumber\">***";
if (response.contains(availableCreditCard)) {
return parseJson.parseCartAndReturnObject(response);
}
return null;
}
public class XboxViewCartServiceTest {
@Test
public void verify_cart_works_with_valid_login() {
FakeXboxCartParseJson jsonParser = new FakeXboxCartParseJson();
XboxViewCartService sut = new XboxViewCartService(new FakeXboxViewCartHttpBase(), jsonParser);
Cart cart = sut.viewCart(null);
Assert.assertTrue(jsonParser.calledMethod);
}
class FakeXboxViewCartHttpBase extends XboxHttpService {
@Override
public ResponseAndCookies doHttpPostWithUrl(String url, ResponseAndCookies responseAndCookies, String json) {
ResponseAndCookies result = new ResponseAndCookies();
result.setResponse("<div class=\"xbox\">TESTING<span class=\"newbox\"><a href=\"javascript:void(0);\" id=\"btnbox\">Use a new box</a></span></div><div class=\"cardnumber\">***-1111</div></div>");
return result;
}
}
class FakeXboxCartParseJson extends XboxCartParseJson {
public boolean calledMethod = false;
@Override
public Cart parseCartAndReturnObject(String html) {
calledMethod = true;
return null;
}
}
}
字符串中是否有非打印字符?在我看来,没有理由在该输入字符串中找不到'cardnumber'。 – 2011-05-24 01:05:28
我们可以看看剩下的代码吗? – Ryan 2011-05-24 01:07:03
似乎为我工作。 http://ideone.com/voTHj – 2011-05-24 01:07:45