从LIST中的字符串中删除数字

时间:2018-05-04 05:53:28

标签: r list

我这里有一小串字符串:

const { Form, Textbox } = t.form;

const Comment = props => (
  <View
    style={{
      flexDirection: 'row',
      alignItems: 'center',
    }}>
    <Textbox {...props} />
    <TouchableHighlight style={styles.postButton} onPress={props.onPress}>
      <Text style={{ padding: 10, fontSize: 20 }}>Post</Text>
    </TouchableHighlight>
  </View>
);

export default class App extends Component {
  static navigationOptions = {
    title: 'Comments',
  };

  commentFormOptions = {
    fields: {
      comment: {
        label: 'What do you think?',
        placeholder: 'Type your reply',
        returnKeyType: 'done',
        factory: props => (
          <Comment {...props} onPress={() => console.log('pressed')} />
        ),
        stylesheet: {
          ...Form.stylesheet,
          textbox: {
            ...Form.stylesheet.textbox,
            normal: {
              ...Form.stylesheet.textbox.normal,
              width: Dimensions.get('window').width - 70,
            },
          },
        },
      },
    },
  };

我想删除带有数字的单词,以便列表中只包含“jason”。 我试过这段代码无济于事。 (我想要一个解决方案,将我的功能应用于列表,而不是矢量或数据帧)

> dput(test)
list(c("jason", "mid1920s", "living2018"))

1 个答案:

答案 0 :(得分:1)

关于在OP代码中使用lapplylistlength 1.在这种情况下,可以提取并应用{{1 }}

gsub

另外,在OP的代码中有一个test[[1]] <- gsub("\\d+", "", test[[1]] 不正确

.

应该是

lapply(test[[1]], gsub("[[:digit:]]+", "", .))

但是,如果意图是lapply(test, function(x) gsub("[[:digit:]]+", "", x)) 出具有数字的元素,则filter将有用,因为grep删除子字符串,即一个或多个数字({{1}来自字符串。

gsub

此外,如果有许多\\d+个元素,我们可以使用test[[1]] <- test[[1]][!grepl("\\d+", test[[1]])]

list