当我在字符串上使用带有正则表达式的split
时,我得到以下输出。
string = "12345678"
string.split(/(..)/)
=> ["", "12", "", "34", "", "56", "", "78"]
为什么我从split
方法获取空字符串?我意识到使用scan
方法会给我没有空字符串的对,但我想知道为什么 split
给我空字符串。
答案 0 :(得分:4)
对于初始的空字符串,这是因为 .controller('myctrl', function($scope, dataService) {
$scope.data = angular.extend( {}, dataService.get())
$scope.save = function ( ) {
dataService.set($scope.data)
}
})
的最初目的是将字符串分隔成带分隔符的字段。它总是假定在分隔符之前有一个字段,即使它是空的。至于其他空字符串,这是因为分隔符是相邻的。