Java tutorial
//package com.java2s; /* * CDDL HEADER START * * The contents of this file are subject to the terms of the Common Development and Distribution License, Version 1.0 * only (the "License"). You may not use this file except in compliance with the License. * * You can obtain a copy of the license at license/ESCIDOC.LICENSE or http://www.escidoc.de/license. See the License for * the specific language governing permissions and limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each file and include the License file at * license/ESCIDOC.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by * brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * Copyright 2006-2011 Fachinformationszentrum Karlsruhe Gesellschaft fuer wissenschaftlich-technische Information mbH * and Max-Planck-Gesellschaft zur Foerderung der Wissenschaft e.V. All rights reserved. Use is subject to license * terms. */ import java.util.regex.Matcher; import java.util.regex.Pattern; public class Main { /** * The thread-safe compiled Pattern used to extract the object id from an provided URI/Fedora id, e.g. from * <info:fedora/escidoc:1> or from http://www.escidoc.de/some/path/escidoc:1 */ private static final Pattern PATTERN_GET_ID_FROM_URI_OR_FEDORA_ID = Pattern.compile(".*/([^/>]+)>{0,1}"); /** * Get the objid from an URI/Fedora identifier, e.g. from <info:fedora/escidoc:1><br/> If the provided value * does not match the expected pattern, it is returned as provided. Otherwise, the objid is extracted from it and * returned. * * @param uri The value to get the objid from * @return Returns the extracted objid or the provided value. */ public static String getIdFromURI(final String uri) { if (uri == null) { return null; } final Matcher matcher = PATTERN_GET_ID_FROM_URI_OR_FEDORA_ID.matcher(uri); return matcher.find() ? matcher.group(1) : uri; } }