Слегка улучшенное решение @Pinhassi.
Работает очень хорошо. Он проверяет конкатенированные строки.
public class DecimalDigitsInputFilter implements InputFilter {
Pattern mPattern;
public DecimalDigitsInputFilter() {
mPattern = Pattern.compile("([1-9]{1}[0-9]{0,2}([0-9]{3})*(\\.[0-9]{0,2})?|[1-9]{1}[0-9]{0,}(\\.[0-9]{0,2})?|0(\\.[0-9]{0,2})?|(\\.[0-9]{1,2})?)");
}
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
String formatedSource = source.subSequence(start, end).toString();
String destPrefix = dest.subSequence(0, dstart).toString();
String destSuffix = dest.subSequence(dend, dest.length()).toString();
String result = destPrefix + formatedSource + destSuffix;
result = result.replace(",", ".");
Matcher matcher = mPattern.matcher(result);
if (matcher.matches()) {
return null;
}
return "";
}
}
Найденный одним путем:
$page = (New-Object System.Net.WebClient).DownloadString("http://localhost/")
Благодаря Steven Murawski для его комментария:
лучший способ действительно зависит, на какой задаче Вы пытаетесь выполнить, как два ответа ниже отметили. WebClient является самым простым, но HttpWebRequest является самым гибким.
Система. Сеть. WebClient является самым легким способом сделать, это для простого ПОЛУЧАЕТ запрос. Однако, если необходимо сделать запрос POST на форму тогда, необходимо будет использовать Систему. Сеть. HttpWebRequest.