using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"import\s+(?:{[^{}]+}|.*?)\s*(?:from)?\s*['""].*?['""]|import\(.*?\)";
string input = @"import {
Component
} from '@angular2/core';
import defaultMember from ""module-name"";
import * as name from ""module-name "";
import { member } from "" module-name"";
import { member as alias } from ""module-name"";
import { member1 , member2 } from ""module-name"";
import { member1 , member2 as alias2 , member3 as alias3 } from ""module-name"";
import {
Component
} from '@angular2/core';
import defaultMember from ""$module-name"";
import defaultMember, { member, member } from ""module-name"";
import defaultMember, * as name from ""module-name"";
import * as name from ""module-name ""
import { member } from "" module-name""
import { member as alias } from ""module-name""
import { member1 , member2 } from ""module-name""
import { member1 , member2 as alias2 , member3 as alias3 } from ""module-name""
import {
Component
} from '@angular2/core'
import defaultMember from ""$module-name""
import defaultMember, { member, member } from ""module-name""
import defaultMember, * as name from ""module-name""
import ""module-name"";
import React from ""react""
import { Field } from ""redux-form""
import ""module-name"";
import {
PlaneBufferGeometry,
OctahedronGeometry,
TorusBufferGeometry
} from '../geometries/Geometries.js';
import {
PlaneBufferGeometry,
OctahedronGeometry,
TorusBufferGeometry
} from '../geometries/Geometries.js'
import(""whatever.js"");
import(""whatever.js"")
import { Field } from ""redux-form"";
import MultiContentListView from ""./views/ListView"";
import MultiContentAddView from ""./views/AddView"";
import MultiContentEditView from ""./views/EditView"";
import { Field } from ""redux-form""
import MultiContentListView from ""./views/ListView""
import MultiContentAddView from ""./views/AddView""
import MultiContentEditView from ""./views/EditView""
<MenuItem value=""^$"" primaryText=""Não exibir importados"" />
<MenuItem value=""\\w+"" primaryText=""Exibir importados"" />
// *Add all needed dependency to this module
// *app requires those import modules to function
*/
/**
*
*Add all needed dependency to this module
*app requires those import modules to function
*
**/
let modules = [];
import defaultExport from ""module-name"";
import * as name from ""module-name"";
import { export1 } from ""module-name"";
import { export1 as alias1 } from ""module-name"";
import { default as alias } from ""module-name"";
import { export1, export2 } from ""module-name"";
import { export1, export2 as alias2, /* … */ } from ""module-name"";
import { ""string name"" as alias } from ""module-name"";
import defaultExport, { export1, /* … */ } from ""module-name"";
import defaultExport, * as name from ""module-name"";
import ""module-name"";
import { ""a-b"" as a } from ""/modules/my-module.js"";
import myDefault from ""/modules/my-module.js"";
import myDefault, * as myModule from ""/modules/my-module.js"";
";
foreach (Match m in Regex.Matches(input, pattern))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx