javascript
/**
* @param {string} str
* @return {number}
*/
var myAtoi = function(str) {
const regMatch=str.match(/^\s*([-|+]?\d+).*$/);
if(!regMatch||regMatch[1]===undefined) return 0;
const num=+regMatch[1];
const max=2147483647;
const min=-2147483648;
if(isNaN(num)) return 0;
if(num>=max) return max;
if(num<min) return min;
return num;
};
^:表示字符串的开始。
\s*:匹配任意数量的空白字符(包括空格、制表符、换行符等)。
([-|+]?\d+):匹配一个可选的正负号(-或+),后面紧跟一个或多个数字(\d表示数字,+表示一个或多个)。
.*:匹配任意数量的任意字符。
$:表示字符串的结束。