如果使用正则表达式找到,则提取字符串

时间:2017-03-26 05:56:25

标签: javascript regex

鉴于myStr:
"压力是"或
"数字可能是4.4psi"

期望的结果:
"压力是"或
"数字可能是"

result = /(.*?)\d+\..*/g.exec(myStr)[1].trim();

将在第二个字符串上起作用,但会在第一个字符串中抛出异常。

  

无法阅读财产' 1'为null。

如何使用正则表达式获得所需? THX

2 个答案:

答案 0 :(得分:1)

您可以使用:

@Override
public void onReceive(Context context, Intent intent) {

    getJSON();
    lngg= intent.getDoubleExtra("longitude",-1);
    latt= intent.getDoubleExtra("latitude",-1);

    map.addMarker(new MarkerOptions()
            .position(new LatLng(latt,lngg))
            .icon(BitmapDescriptorFactory.fromResource(R.drawable.locationpeople1))
            .title("I am here "));
}

将所有以数字开头的文字替换为行尾。

RegEx Demo

答案 1 :(得分:0)

JavaScript支持此处可能有用的\D

str = str.replace(/^(\D*).*/, '$1');

请参阅an example on regex101.com(诚然,虽然需要更多句子)。